Node.js Express中的HTTP GET请求

Node.js Express中的HTTP GET请求,第1张

Node.js Express中的HTTP GET请求

这是我的示例中的一些代码片段。它是异步的,并返回JSON对象。它可以执行任何形式的GET请求。

请注意,还有更多的最佳方法(仅作为示例)-例如,与其将放入数组的块连接起来并进行连接,而不是将它们串联在一起……希望,它可以使您朝正确的方向开始:

const http = require('http');const https = require('https');module.exports.getJSON = (options, onResult) => {  console.log('rest::getJSON');  const port = options.port == 443 ? https : http;  let output = '';  const req = port.request(options, (res) => {    console.log(`${options.host} : ${res.statusCode}`);    res.setEncoding('utf8');    res.on('data', (chunk) => {      output += chunk;    });    res.on('end', () => {      let obj = JSON.parse(output);      onResult(res.statusCode, obj);    });  });  req.on('error', (err) => {    // res.send('error: ' + err.message);  });  req.end();};

通过创建一个选项对象来调用它,例如:

const options = {  host: 'somesite.com',  port: 443,  path: '/some/path',  method: 'GET',  headers: {    'Content-Type': 'application/json'  }};

并提供回调函数。

例如,在服务中,我需要上面的REST模块,然后执行此 *** 作:

rest.getJSON(options, (statusCode, result) => {  // I could work with the resulting HTML/JSON here. I could also just return it  console.log(`onResult: (${statusCode})nn${JSON.stringify(result)}`);  res.statusCode = statusCode;  res.send(result);});
更新

如果您要查找

async
/
await
(线性,无回调),promise,编译时支持和智能感知,我们创建了一个符合要求的轻量级HTTP和REST客户端

微软键入休息客户端



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5008107.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-14
下一篇2022-11-14

发表评论

登录后才能评论

评论列表(0条)

    保存