Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将JSON数据发布到呈现页面_Javascript_Node.js_Post_Express_Get - Fatal编程技术网

Javascript 将JSON数据发布到呈现页面

Javascript 将JSON数据发布到呈现页面,javascript,node.js,post,express,get,Javascript,Node.js,Post,Express,Get,我从URL获取JSON格式的搜索结果:“/accounts/:id/users”,我需要检索JSON数据以呈现“/contacts/find”。(后一页显示搜索结果。) 这是我的应用程序路由器。有了它,我可以看到JSON格式的/contacts/find中的搜索结果: app.post('/contacts/find', function(req, res) { var searchStr = req.param('searchStr', null); if ( null == sear

我从URL获取JSON格式的搜索结果:“/accounts/:id/users”,我需要检索JSON数据以呈现“/contacts/find”。(后一页显示搜索结果。)

这是我的应用程序路由器。有了它,我可以看到JSON格式的/contacts/find中的搜索结果:

app.post('/contacts/find', function(req, res) {
  var searchStr = req.param('searchStr', null);
  if ( null == searchStr ) {
    res.send(400);
    return;
  }

  models.Account.findByString(searchStr, function onSearchDone(err,accounts) {
    if (err || accounts.length == 0) {
      res.send(404);
    } else {
      res.send(accounts);
    }
  });
});
如何使用“accounts”(JSON格式)并使用account信息重新呈现页面?我正在尝试下面的代码片段,但它不起作用

app.get('/contacts/find', function(req, res) {
 res.render('searchResult.ejs', {
  accounts: req.accounts,
  email: req.accounts.email
 })
}

app.get方法不工作。URL只显示JSON数据。

那么
帐户
是JSON字符串吗?在这种情况下,您可以对其进行解析(将其转换回对象)并将结果传递给模板:

var accounts = JSON.parse(req.accounts);
res.render('searchResult.ejs', {
  accounts : accounts,
  email    : accounts.email
 })

如果我在“app.post”方法中呈现页面而不使用“app.get”方法,可以吗?@eknbrk当然可以,我不明白为什么不能。只需将帖子中的
res.send
替换为
res.render
再次感谢@robertklep。。它工作,但它的页面呈现为“未定义”。。你知道吗?@eknbrk听起来像是
帐户。电子邮件可能未定义?