Переслать http-прокси с помощью HTTP-прокси узла

Я использую библиотеку node-http-proxy для создания прямого прокси-сервера. В конечном итоге я планирую использовать некоторое промежуточное программное обеспечение для изменения html-кода на лету. Вот как выглядит код моего прокси-сервера

var httpProxy = require('http-proxy') httpProxy.createServer(function(req, res, proxy) { var urlObj = url.parse(req.url); console.log("actually proxying requests") req.headers.host = urlObj.host; req.url = urlObj.path; proxy.proxyRequest(req, res, { host : urlObj.host, port : 80, enable : { xforward: true } }); }).listen(9000, function () { console.log("Waiting for requests..."); }); 

Теперь я изменяю настройки прокси-сервера chrome и разрешаю адрес веб-прокси-сервера как localhost: 9000

Однако каждый раз, когда я нахожусь на обычном веб-сайте http, мой сервер выходит из строя, говоря "Error: Must provide a proper URL as target"

Я новичок в nodejs, и я не совсем понимаю, что я здесь делаю неправильно?

Чтобы использовать динамическую цель, вы должны создать обычный HTTP-сервер, который использует экземпляр прокси, для которого вы можете установить целевой динамически (на основе входящего запроса).

Прокси-сервер для пропущенных костей:

 const http = require('http'); const httpProxy = require('http-proxy'); const proxy = httpProxy.createProxyServer({}); http.createServer(function(req, res) { proxy.web(req, res, { target: req.url }); }).listen(9000, () => { console.log("Waiting for requests..."); });