0
node.jsサーバーにリクエストモジュールを使用すると、waitやreturnなどの問題が発生します。リクエストレスポンスを待って値を返す方法はありますか?
私はrequestControllerで「responseObject」値を受け取りたいです。
は、この問題を解決するために、私は最善の方法を検索していますが、私はまだそれを見つけることができません。どのようにこの問題を解決することができますか?
は、事前に感謝します! :)
============================================ =============================
var requestToServer = require('request');
function getRequest(requestObject) {
var urlInformation = requestObject['urlInformation'];
var headerInformation = requestObject['headerInformation'];
var jsonObject = new Object();
// Creating the dynamic body set
for(var i = 0; i < headerInformation.length; i++)
jsonObject[headerInformation[i]['headerName']] = headerInformation[i]['headerValue'];
requestToServer({
url : urlInformation,
method : 'GET',
headers : jsonObject
}, function(error, response ,body) {
// todo response controlling
var responseObject = response.headers;
responseObject.body = body;
});
}
// Controlling the submitted request
exports.requestController = function(requestObject) {
var method = requestObject['methodInformation'];
var resultObject = null;
// Selecting the method
if(method == "GET")
resultObject = getRequest(requestObject);
else if(method =="POST")
resultObject = postRequest(requestObject);
else if(method == "PUT")
resultObject = putRequest(requestObject);
else if(method == "DELETE")
resultObject = deleteRequest(requestObject);
console.log(JSON.stringify(resultObject));
}
あなたはコールバックを使用することができます – Tdm
[繊維](https://www.npmjs.com/package/fibers)を使用する必要があるように見えます。 –