首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Node.js内部进行远程REST调用?有卷发吗?

如何在Node.js内部进行远程REST调用?有卷发吗?
EN

Stack Overflow用户
提问于 2011-04-13 09:01:54
回答 14查看 444.3K关注 0票数 211

Node.js中,除了使用子进程进行 CURL 调用之外,还有什么方法可以对远程服务器REST API进行CURL调用并获取返回数据?

我还需要设置远程REST调用的请求头,以及GET (或POST)中的查询字符串。

我找到了这个:http://blog.nodejitsu.com/jsdom-jquery-in-5-lines-on-nodejs

但是它没有显示任何POST查询字符串的方法。

EN

回答 14

Stack Overflow用户

回答已采纳

发布于 2011-04-13 09:11:10

看看http.request

代码语言:javascript
复制
var options = {
  host: url,
  port: 80,
  path: '/resource?id=foo&bar=baz',
  method: 'POST'
};

http.request(options, function(res) {
  console.log('STATUS: ' + res.statusCode);
  console.log('HEADERS: ' + JSON.stringify(res.headers));
  res.setEncoding('utf8');
  res.on('data', function (chunk) {
    console.log('BODY: ' + chunk);
  });
}).end();
票数 229
EN

Stack Overflow用户

发布于 2014-09-01 23:53:42

使用Request — Simplified HTTP client怎么样?

编辑2020年2月:请求已被弃用,因此您可能不应再使用它。

下面是一个GET:

代码语言:javascript
复制
var request = require('request');
request('http://www.google.com', function (error, response, body) {
    if (!error && response.statusCode === 200) {
        console.log(body) // Print the google web page.
     }
})

OP也想要一个帖子:

代码语言:javascript
复制
request.post('http://service.com/upload', {form:{key:'value'}})
票数 95
EN

Stack Overflow用户

发布于 2016-10-05 08:47:44

我使用node-fetch是因为它使用熟悉的fetch() API (如果您是web开发人员)。fetch()是从浏览器发出任意HTTP请求的新方法。

是的,我知道这是一个节点js的问题,但我们不想减少API开发人员必须记忆和理解的数量,并提高我们的javascript代码的可重用性吗?Fetch is a standard,那么我们在这个问题上如何?

fetch()的另一个好处是它返回一个javascript Promise,所以你可以像这样写异步代码:

代码语言:javascript
复制
let fetch = require('node-fetch');

fetch('http://localhost', {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: '{}'
}).then(response => {
  return response.json();
}).catch(err => {console.log(err);});

获取超级种子XMLHTTPRequest。这是一些more info

票数 44
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5643321

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档