superagent使用代理

2022-11-01 16:22:58 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

superagent是一个轻量级的Ajax api,既可以在服务端的nodejs中使用,也可以在客户端的javascript中使用,其api相对简单易上手。大家在工作中应该经常会使用到,但是superagent通过代理去调用服务,应该很少使用,下面就给大家具体介绍下如何使用:

由于superagent本身不支持代理的方式进行http请求,因此需要借助第三方的模块,本文介绍的是superagent-proxy。

安装

代码语言:javascript复制
$ npm install superagent-proxy

示例

代码语言:javascript复制
var request = require('superagent');

// extend with Request#proxy()
require('superagent-proxy')(request);

// HTTP, HTTPS, or SOCKS proxy to use
var proxy = process.env.http_proxy || 'http://168.63.43.102:3128';

request
  .get(process.argv[2] || 'https://encrypted.google.com/')
  .proxy(proxy)
  .end(onresponse);

function onresponse (err, res) {
  if (err) {
    console.log(err);
  } else {
    console.log(res.status, res.headers);
    console.log(res.body);
  }
}

superagent用法

代码语言:javascript复制
const superagent = require('superagent');

// callback
superagent
  .post('/api/pet')
  .send({ name: 'Manny', species: 'cat' }) // sends a JSON post body
  .set('X-API-Key', 'foobar')
  .set('accept', 'json')
  .end((err, res) => {
    // Calling the end function will send the request
  });

// promise with then/catch
superagent.post('/api/pet').then(console.log).catch(console.error);

// promise with async/await
(async () => {
  try {
    const res = await superagent.post('/api/pet');
    console.log(res);
  } catch (err) {
    console.error(err);
  }
})();

参考:

superagent-proxy – npm

superagent – npm

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

0 人点赞