nodejs通过代理(proxy)发送http请求(request)

var http = require(‘http‘)
var opt = {
 host:‘这里放代理服务器的ip或者域名‘,
 port:‘这里放代理服务器的端口号‘,
 method:‘POST‘,//这里是发送的方法
 path:‘ https://www.google.com‘,     //这里是访问的路径
 headers:{
  //这里放期望发送出去的请求头
 }
}
//以下是接受数据的代码
var body = ‘‘;
var req = http.request(opt, function(res) {
  console.log("Got response: " + res.statusCode);
  res.on(‘data‘,function(d){
  body += d;
 }).on(‘end‘, function(){
  console.log(res.headers)
  console.log(body)
 });

}).on(‘error‘, function(e) {
  console.log("Got error: " + e.message);
})
req.end();

example:

var url = "https://maps.googleapis.com/maps/api/place/textsearch/json?query=chengdu&key=AIzaSyADem01JiuaQddzqagjdy41ep6SbhxBl8s";

var http = require(‘http‘)
var opt = {
host:‘127.0.0.1‘,
port:‘8087‘,
method:‘get‘,//这里是发送的方法
path:url, //这里是访问的路径
headers:{
‘Accept-Language‘:‘zh-CN,zh;q=0.8‘,
‘Host‘:‘maps.googleapis.com‘
}
}
//以下是接受数据的代码
var body = ‘‘;
var req = http.request(opt, function(res) {
console.log("Got response: " + res.statusCode);
res.on(‘data‘,function(d){
console.log(d);
body += d;
}).on(‘end‘, function(){
console.log(res.headers)
console.log(body)
});

}).on(‘error‘, function(e) {
console.log("Got error: " + e.message);
})
req.end();

时间: 2024-08-19 00:10:48

nodejs通过代理(proxy)发送http请求(request)的相关文章

nodejs向远程服务器发送post请求----融云Web SDK/客户端获取token

最近要用到一个叫融云的及时通讯的SDK,在获取token这个步骤的时候有点卡顿,以防以后碰到类似的问题,再此记录一下. 客户端通过融云 SDK 每次连接服务器时,都需要向服务器提供 Token,以便验证身份,流程如下: 流程如下: 1.客户端获取用户id,并向服务器请求token(注意这里的服务器不是融云的服务器,而是客户端的服务端) 2.客户端的服务端接收到token请求后,向融云的服务器请求token 3.融云服务器接受到token请求,返回token给客户端的服务端. 4.客户端的服务端接

Jmeter发送HTTPS请求

Jmeter一般来说是压力测试的利器,最近想尝试jmeter和BeanShell进行接口测试.由于在云阅读接口测试的过程中需要进行登录操作,而登录请求是HTTPS协议.这就需要对jmeter进行设置. (一)设置HTTP请求 我们首先右键添加线程组,然后继续右键添加控制器,由于登陆操作只请求一次,因而选择仅一次控制器.接下来右键添加sampler->HTTP请求,设置HTTP请求.这里注意的地方首先是端口号,如果只是普通的HTTP协议,默认不填,而这里是HTTPS协议,因而填端口号443.另外“

【转载】JMeter学习(三十六)发送HTTPS请求

Jmeter一般来说是压力测试的利器,最近想尝试jmeter和BeanShell进行接口测试.由于在云阅读接口测试的过程中需要进行登录操作,而登录请求是HTTPS协议.这就需要对jmeter进行设置. (一)设置HTTP请求 我们首先右键添加线程组,然后继续右键添加控制器,由于登陆操作只请求一次,因而选择仅一次控制器.接下来右键添加sampler->HTTP请求,设置HTTP请求.这里注意的地方首先是端口号,如果只是普通的HTTP协议,默认不填,而这里是HTTPS协议,因而填端口号443.另外“

Nodejs发送Post请求时出现socket hang up错误的解决办法

参考nodejs官网发送http post请求的方法,实现了一个模拟post提交的功能.实际使用时报socket hang up错误. 后来发现是请求头设置的问题,发送选项中需要加上headers字段信息(这个估计也和对方的服务器有关,对于不完成的post请求头,可能被丢弃了). 完整的代码如下(遇到类型问题的同学可以做个参考): var querystring = require('querystring') , http = require('http'); var data = query

Nodejs Http发送post请求

Nodejs  Http发送post请求 var http = require('http');function epay(params){ console.log(" COME IN");var params = JSON.stringify({"sign":"ExdYcut6LgrKGsHuAyoxFTMDuDYVmyFFu7GRHPRwB/DBwm6cyBe9Sr2rti1/SjWPcdXLoWIHWEJ9IFKPK+3ieKU/MkNqeh1opH

利用HttpURLConnecion通过Nginx向代理邮件服务器发送POST请求

第一步:获取邮件各种参数,通过URLencode和Base64编码之后发送请求参数. 请求参数中,有邮件附件这样的大件,如何当做请求发送呢? 首先,将邮件内容转为字节数组,转为字节数组之后可以当做二进制操作了,保持了附件最原始的面貌,不会被任何其他因素影响. byte[] att= attachment.getContent(); //附件内容 //利用Base64进行加密传输,虽然加密的不够 Base64 base64 = new Base64(); //org.apache.commons.

Nodejs后台发送https请求验证证书

项目中用到了很多第三方的库,这些库在生产环境使用的时候的都会发送https的请求出去,但是再发送请求的时候nodejs会验证证书,没有证书的时候都会无法通过,这里可以修改代码进行修改这个问题, 1.在发送https请求的时候添加如下代码: rejectUnauthorized: false, 如图,某个库: 2.还有就是全局设置. 启动程序的时候设置: process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";

Feign发送Get请求时,采用POJO对象传递参数的最终解决方案 Request method 'POST' not supported (附带其余好几个坑)

yml: feign: httpclient: enabled: true properties: #feign feign.httpclient.enabled=true <!-- https://mvnrepository.com/artifact/io.github.openfeign/feign-httpclient --> <dependency> <groupId>io.github.openfeign</groupId> <artifac

实现代理proxy

用户在哪些情况下是需要设置网络代理呢? 1. 内网上不了外网,需要连接能上外网的内网电脑做代理,就能上外网:多个电脑共享上外网,就要用代理: 2.有些网页被封,通过国外的代理就能看到这被封的网站:3.想隐藏真实IP: 4. 想加快访问网站速度,在网络出现拥挤或故障时,可通过代理服务器访问目的网站.比如A要访问C网站,但A到C网络出现问题,可以通过绕道,假设B是代理服务器,A可通过B, 再由B到C. 我们app的大多数用户情况是第一种.我们参考qq和chrome的插件switchysharp设置代