0
node.jsに単純なTCPとHTTPプロキシを作成したいとします。たとえば、プロキシはポート8080をリッスンし、すべてのTCPリクエストを127.0.0.1:8181
にリダイレクトし、すべてのHTTPリクエストを127.0.0.0.1:8282
node.jsのTCP/HTTPプロキシ
私はコードの20行で単純なHTTPプロキシのためにGoogleでこのスニペットを見つけました:だから基本的に私はそれがTCPまたはHTTPかどう推測し、8080で要求の任意の並べ替えをリッスンする必要が
var http = require('http');
http.createServer(function(request, response) {
var proxy = http.createClient(80, request.headers['host'])
var proxy_request = proxy.request(request.method, request.url, request.headers);
proxy_request.addListener('response', function (proxy_response) {
proxy_response.addListener('data', function(chunk) {
response.write(chunk, 'binary');
});
proxy_response.addListener('end', function() {
response.end();
});
response.writeHead(proxy_response.statusCode, proxy_response.headers);
});
request.addListener('data', function(chunk) {
proxy_request.write(chunk, 'binary');
});
request.addListener('end', function() {
proxy_request.end();
});
}).listen(8080);
、および要求を正しいパスにプロキシします。上のスニペットを使用して任意のヒント?
おかげ
HTTPは、TCPを介したアプリケーションレベルのトランスポートです。私はあなたが 'このtcpデータが有効なHTTPリクエストを作成するかどうかを確認しようとしています'と言っていると思います –