сервер A Node.js работает Express.js обрабатывает HTTP GET
к mydomain.com/myurl
, отправив POST
в http://some_other_domain_url_with_params?reply_url=mydomain.com/myurl
. И ответ возвращается как просто JSON.Тестирование и анализ ответа JSON в Node.js/Express.js
Какой код нужно добавить в файл routes.js ниже, для того, чтобы:
1.) создать отдельный блок обработки в том случае, если запрос mydomain.com/myurl является только JSON, и
2.) передать элементы ответа JSON вручную по имени в переменную1, переменную2, переменную3 и т. Д.?
Вот routes.js
, который обрабатывает серверные маршруты:
var url = require('url');
module.exports = function(app) {
app.get('/myurl', function(req, res) {
app.post('http://some_other_domain_url_with_params?reply_url=mydomain.com/myurl', function(req, res) {});
console.log('The POST is finished. Waiting for response.');
//need separate handler for JSON response that comes back from the other domain after this
});
app.get('*', function(req, res) {
res.sendfile('./public/index.html'); // load the single view file (angular will handle the front-end)
});
};
Ответ от POST http://some_other_domain_url_with_params?reply_url=mydomain.com/myurl
может выглядеть следующим образом:
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Cache-Control: no-store
Pragma: no-cache
{
"var_one":"value1",
"var_two":"value2",
"var_three":1100
}
Это работает. Однако не забудьте: 'npm install --save request' – CodeMed