Я хотел проверить код в Node.js документального, но у меня есть эта проблема:Ошибка в «чистом» модуле
net.js: 951 бросить новый TypeError ("вариант„порт“должен быть число или строка: '+ ^
TypeError: опция "порт" должен быть числом или строкой: нулевой
Мой код:
const http = require('http');
const net = require('net');
const url = require('url');
// Create an HTTP tunneling proxy
var proxy = http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('okay');
});
proxy.on('connect', (req, cltSocket, head) => {
// connect to an origin server
var srvUrl = url.parse("http://${req.url}");
var srvSocket = net.connect(srvUrl.port, srvUrl.hostname,() => {
cltSocket.write('HTTP/1.1 200 Connection Established\r\n' +
'Proxy-agent: Node.js-Proxy\r\n' +
'\r\n');
srvSocket.write(head);
srvSocket.pipe(cltSocket);
cltSocket.pipe(srvSocket);
});
});
// now that proxy is running
proxy.listen(1337, '127.0.0.1',() => {
// make a request to a tunneling proxy
var options = {
port: '1337',
hostname: '127.0.0.1',
method: 'CONNECT',
path: 'www.google.com'
};
var req = http.request(options);
req.end();
req.on('connect', (res, socket, head) => {
console.log('got connected!');
});
});
Той же проблема:/---> http://imgur.com/a/XwuOb – FalqueDEV
Я обновил свой ответ. – mscdex