繁体   English   中英

如何从函数返回 json?

[英]How do I return a json from a function?

我现在正在使用 Javascript、节点 js 和风帆。 我正在努力学习如何做一些事情。

现在,我有一个我想做的基本情况的模拟。 我想将从rest调用返回的json返回给控制器,并将其显示在网页上。

到目前为止,这就是我所拥有的:

module.exports = {


  /**
   * `PersonController.scream()`
   */
  scream: function (req, res) {
    function subscream(){
        var per = {voice: 'AAAAAAAAAAAAAAA'};
        return per;
    }
    var loudness = subscream()
    return loudness;
  }

};

console.log 语句确实将 json 打印到控制台,但该函数似乎永远不会返回。 我知道我遗漏了一些明显的东西,但我对 Javascript 或 node js 的了解还不够多,无法知道如何称呼这个问题,所以不幸的是我还不能谷歌它。

要将 JSON 打印到客户端,您必须发送响应而不是在函数中返回 JSON。

scream: function (req, res) {
  function subscream(){
    var per = {voice: 'AAAAAAAAAAAAAAA'};
    var perString = JSON.stringify(per);
    console.log(perString)
    return perString;
  }
  var loudness = subscream()
  res.send(loudness);
}
module.exports = {
  /**
   * `PersonController.scream()`
   */
  scream: function (req, res) {
   function subscream(){
    return new Promise(function(resolve, reject){
     var per = {voice: 'AAAAAAAAAAAAAAA'};
        var perString = JSON.stringify(per);
        console.log(perString)
        resolve(perString);
    })
   }
    var scream = subscream()
    scream.then(function(resolvedPromise){
      res.send(resolvedPromise)
    }).catch(function(){
        res.send("error")
     })
  }
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM