обработка ответа json асинхронно
Вопрос
Проверьте код
var server = http.createServer(function(req, res){
var parsedUrl = require('url').parse(req.url);
var pathname = parsedUrl.pathname;
pathname = pathname.replace('/get/','');
GPSData.find({}, function(err, data) {
if(err)
console.log(err, data, data.length);
res.writeHead(200, {
"Content-Type": "application/json",
"Access-Control-Allow-Origin": "*"
});
console.log('hello');
res.end(data);
});
});
Как получить данные JSON от DB и показать в ответ? Если я перемещаю res.end ('some-json') из gpsdata.find (), то я вижу свою страницу в браузере, но как показать данные из DB в ответ?
Как справиться со всем этим асинхронно?
Решение 2
Хорошо, я обнаружил, что мне нужно строить мои данные перед отправкой ответа
var body = JSON.stringify(data);
res.end(body);
Другие советы
Если браузер отображает «эта веб -страница недоступна», то либо вы должны получить некоторые сообщения об ошибках в консоли, либо вам просто пропало server.listen(<port_number>);
в конце.
Не связан с StackOverflow