为什么它不将 JSON 返回到浏览器
why does it not return JSON to browser
>我正在尝试将JSON格式发送到浏览器以显示。但似乎它不会流浪,而且有一个错误,如 req.write 部分。访问网址为 127.0.0.1:3000/media=video我可以访问服务器,但它不会将 JSON 返回到浏览器。
var http = require('http');
var recommandCat=['top5','newest','like','random','recommened'];
var url =require('url');
http.createServer(function (req, res) {
var url_parts = url.parse(req.url, true);
var query = url_parts.query;
var returnJson="";
console.log(query.media);
switch (query.media)
{
case 'photo':
returnJson=photoGenerator();
break;
case 'video':
returnJson=videoGenerator();
break;
case 'audio':
returnJson=audioGenerator();
}
console.log(returnJson);
res.write(returnJson);
}).listen(3000, '127.0.0.1');
function videoGenerator()
{
var jsonArray = new Array();
for(i=0;i<10;i++)
{
var data = new Object();
var recoCat = recommandCat[Math.floor(Math.random()*4)];
data = {
tomEngine:{
mediaType:"video",
recommendset:[
{recommendCat:"+recoCat+",
recommendResult:[
{
mediaId:"",
mediaEntry:[{
user1:{
name:"sooin",
rating:"3",
views:"2",
like:"ture",
comment:"good"
},
user2:{
name:"sara",
rating:"1",
views:"4",
like:"ture",
comment:"good!"
}
}],
view:"4",
rating:"4",
like:"10",
attribute:{
smallUrl:"www",
largeUrl:"llll",
title:"aaaa"
},
}]
}
]
}
};
jsonArray.push(data);
}
return jsonArray;
}
也许我的 json 格式是错误的。谢谢。
您可能必须将正确的 Content-Type 标头发送到客户端。此外,应该在每个响应的末尾调用 response.end()。
var body = JSON.stringify(returnJson);
res.writeHead(200, {
'Content-Length': body.length,
'Content-Type': 'application/json'
});
res.write(body);
res.end();
此外,如果您的响应正文没有分块,您可以仅使用方法response.end(),例如
res.end(body);
相关文章:
- 当使用ajax并将html数据保存为对象时,收听浏览器返回按钮.好的或坏的
- 通过浏览器加载页面时触发加载脚本(js或jQuery)'s”;返回“;作用
- 为什么可以't我在谷歌浏览器中返回cookie
- '返回'浏览器按钮返回白色页面
- 使用Javascript或AngularJS控制或禁用浏览器返回按钮
- 从服务器返回exe文件,并通过浏览器在客户端下载
- 浏览器返回按钮上的确认框
- 为什么它不将 JSON 返回到浏览器
- JS函数在浏览器历史记录中返回特定域的上次浏览页面
- 当用户返回 UC 浏览器时,如何以编程方式禁用缓存
- navigator.plugins如何查找并返回安装在web浏览器上的插件对象数组
- 当我点击浏览器返回选项时,阻止在php上刷新页面
- 检测用户是否通过浏览器返回按钮到达当前页面
- Safari浏览器返回按钮问题
- Web浏览器返回按钮应返回到特定页面
- 返回浏览器时保留jQuery addClass
- 返回浏览器-返回链接位置
- 返回浏览器
- 通过javascript/jquery限制浏览器刷新,f5,像银行网站一样返回浏览器
- 当你返回浏览器时会发生什么