【问题标题】:Node JS OR Express JS HTTP GET RequestNode JS 或 Express JS HTTP GET 请求
【发布时间】:2015-07-05 22:34:10
【问题描述】:

我正在使用 express.js,我需要调用 HTTP GET 请求以获取 JSON 数据。请建议我一些好的节点 js/express js 模块/lib 来执行 get/post 请求。

【问题讨论】:

    标签: javascript node.js express


    【解决方案1】:

    Node.js 以 http.request 的形式为此功能提供了一个极其简单的 API。

    var http = require('http');
    
    //The url we want is: 'www.random.com/integers/?num=1&min=1&max=10&col=1&base=10&format=plain&rnd=new'
    var options = {
      host: 'www.random.com',
      path: '/integers/?num=1&min=1&max=10&col=1&base=10&format=plain&rnd=new'
    };
    
    callback = function(response) {
      var str = '';
    
      //another chunk of data has been recieved, so append it to `str`
      response.on('data', function (chunk) {
        str += chunk;
      });
    
      //the whole response has been recieved, so we just print it out here
      response.on('end', function () {
        console.log(str);
      });
    }
    
    http.request(options, callback).end();
    

    Here 我附上了更多带有 POST 和自定义标头的示例。如果您不需要特殊的东西,我会坚持使用本机代码。

    此外,RequestSuperagentRequestify 是非常不错的库。

    【讨论】:

      【解决方案2】:
      var express = require('express');
      var app = express();
      var fs = require('fs');
      
      app.get('/', function (req, res) {
          fs.readFile('./test.json', 'utf8', function (err, data) {
              if (err) {
                  res.send({error: err});
              }
              res.send(data);
          })
      });
      var server = app.listen(3001, function () {
          console.log('Example app listening port 3001');
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-02-07
        • 2017-03-31
        • 2019-06-30
        • 1970-01-01
        • 1970-01-01
        • 2016-02-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多