【问题标题】:Integrating my node.js module to express.js app将我的 node.js 模块集成到 express.js 应用程序
【发布时间】:2014-03-22 11:40:26
【问题描述】:

我在 node.js 中创建了一个模块。基本上,这个模块从 mongodb 抓取数据并返回一个 JSON 值。

现在在 Express.js 中,前端开发人员(不是我)正在使用 jQuery 插件来做事。这个 jQuery 需要一个 JSON 变量作为参数来做它的事情。

现在,我不知道如何将我的 JSON 变量(在服务器端生成)发送到在客户端工作的 jQuery 插件。我不知道如何开始这样做,所以我很难用谷歌搜索它。不知道关键字是什么。因此,无论是技术答案还是对这项工作的一般解释都将受到赞赏。

【问题讨论】:

  • 从前端向后端路由(例如 /getmyjson)发出 ajax 请求...在 express 上,定义此路由,并将您从模块中获得的 json 值发回。跨度>

标签: javascript jquery json node.js


【解决方案1】:

试试下面的代码:
客户端jQuery

$.ajax({
    type: 'POST',
    url: 'http://localhost:3000/request',
    data: {
        test: "test"
    },
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success : function(result){
            alert(result);
    },
    error : function(){
            console.log("error")
    }
});

在 Node.js 中
尝试以下服务器端代码来处理/request

app.get('/request', function(req, res){ 
      var data = {'TestKey':'TestValue'};
      //For test at server side only
      console.log('Sent this data to client:\n' + JSON.stringify(data)); 
      res.writeHead(200, { 'Content-Type': 'application/json' }); 
      res.end(JSON.stringify(data)); 
});


更新:代替res.writeHead.. & res.end..
您还可以使用:
res.json(data);

【讨论】:

    猜你喜欢
    • 2020-09-20
    • 1970-01-01
    • 2018-02-06
    • 2016-03-07
    • 2013-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-10
    相关资源
    最近更新 更多