Node.js:从mongoose查询返回正确的JSON
Node.js: Returning proper JSON from mongoose query
我有一个以mongoDB为数据库、以handlers为服务器端模板引擎的express应用程序。我的应用程序中没有使用AngularJS或Ajax。
在其中一个路由中,我必须呈现页面,并从数据库发送json文件。然而,我无法做到这一点。
以下是我的路线的代码片段:
router.get('/disks', function(req, res, next) {
places.find({"category": "disks"}, function(err, disks){
if(err){
throw err;
}
res.render('disks',
{
'risime': JSON.stringify(disks)
});
console.log(disks); // PROPERLY LOGS TO THE CONSOLE
});
});
在hbs中,我试图捕获它,但我甚至不认为它是JSON。
以下是它在客户端的登录方式:
[{"_id":"5704630a7d4cd367f8dsdce7","name":"Seagate",:"This awesome Hard disk",","categories":["SDD","256GB"]}]
问题是什么?我该如何解决?
它是"html转义"字符串的句柄(这是您通常想要的)。
如果你不想这样,你可以使用"三重隐藏"表示法,比如:
{{{risime}}}
你可以在这里阅读:http://handlebarsjs.com/#html-退出
我认为您需要在渲染之前添加以下内容:
res.type('application/json');
客户端将知道这是一个JSON,而不是HTML或纯文本,并且它将正确显示。
我希望我的回答能对你有所帮助。
相关文章:
- 将数据加载到使用JSON返回的表单字段时出现问题
- Javascript json返回未定义
- JSON返回数组的奇怪结果
- 如何使用 json 返回简单数据
- Json 返回每个函数
- 为什么它不将 JSON 返回到浏览器
- JQUERY JSON返回未定义
- 如何在视图中显示json返回的linq列表
- 解析JSON返回意外的标识符错误
- jquery json 返回添加两个数字的数据
- 如何在jsp中的javascript函数中从servlet获取json返回
- 在JSON返回值中循环
- 在.load jquery中使用JSON返回的页面url
- JSON 返回多个具有相同名称的值
- JSON 返回重复项
- JSON 返回未定义
- 映射 JSON 返回为 FullCalendar jQuery 库可用
- PHP 和 JSON:返回合适的格式
- 当 JSON 返回某个值时,更改 AJAX 中按钮的值
- 内线.当JSON返回“success”时,Ajax.request将成功:false