Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Erläuterung des Sendens einer HTTP-Anfrage durch NodeJS über einen Proxy-Proxy

Detaillierte Erläuterung des Sendens einer HTTP-Anfrage durch NodeJS über einen Proxy-Proxy

小云云
小云云Original
2018-02-03 11:32:582271Durchsuche

Dieser Artikel stellt hauptsächlich NodeJS zum Senden von HTTP-Anfragen über einen Proxy vor. Wenn Sie interessiert sind, können Sie davon erfahren.

Es kann eine solche Anforderung geben, die erfordert, dass der Knoten als Webserver verwendet wird, um http- oder https-Anfragen über einen anderen http/https-Proxyserver zu senden. Ohne weiteres kennt jeder den Code direkt:


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();

Auf diese Weise senden wir eine https-Anfrage über den angegebenen Proxyserver. Beachten Sie, dass wir hier das HTTP-Protokoll mit dem Proxyserver verwenden, nicht https Das zurückgegebene Ergebnis ist natürlich unterschiedlich. Es hängt von Ihrem Proxyserver ab.


Got response: 302
{ location: 'https://www.google.com.tw/',
 'cache-control': 'private',
 'content-type': 'text/html; charset=UTF-8',
 'set-cookie': 
  [ 'PREF=ID=b3cfcb24798a7a07:FF=0:TM=1356078097:LM=1356078097:S=v_3qEd0_gCW6-xum; expires=Sun, 21-Dec-2014 08:21:37 GMT; path=/; domain=.google.com',
   'NID=67=qoJf_z3W7KlibpNZ6xld__r0rYGyYu7l_XiDQmZ3anjBFadDzhijME3QcX651yucne_irK_2JMS8HF5FuxNl85mE0nDrtn9Iq0z2gW69n00OrB970hpHTbYe0mAogZit; expires=Sat, 22-Jun-2013 08:21:37 GMT; path=/; domain=.google.com; HttpOnly' ],
 p3p: 'CP="This is not a P3P policy! See http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for more info."',
 date: 'Fri, 21 Dec 2012 08:21:37 GMT',
 server: 'gws',
 'content-length': '223',
 'x-xss-protection': '1; mode=block',
 'x-frame-options': 'SAMEORIGIN',
 via: '1.0 ***.****.com:80 (squid/2.6.STABLE21)',
 'proxy-connection': 'keep-alive' }
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A href="https://www.google.com.tw/" rel="external nofollow" >here</A>.
</BODY></HTML>

Google hat eine 302 zurückgegeben und uns mitgeteilt, dass wir zum Springen diese Adresse https://www.google.com.tw/ besuchen müssen

Verwandte Empfehlungen:

Mehrere Möglichkeiten zum Senden von HTTP-Anfragen in PHP

So senden Sie HTTP-Anfragen in Java durch HttpClient

Einführung, wie PHP HTTP-Anfragen sendet

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Sendens einer HTTP-Anfrage durch NodeJS über einen Proxy-Proxy. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn