目标的Http代理错误

时间:2015-07-28 10:56:48

标签: node.js node-http-proxy

我使用以下代码并且它可以正常工作

          proxy.web(req, res, {
                changeOrigin: true,
                target: 'http://' + hostname + ':' + port,
                ws: true
            });

但是当我尝试以下操作时出现错误,为什么?

proxy.web(req, res, {
                target: {
                    host: 'http://' + hostname,
                    port: port
                },

        });

2 个答案:

答案 0 :(得分:4)

因为httpProxy.createProxyServer使用url.parse,它将把字符串作为参数,你可以在这里看到documentatin https://nodejs.org/docs/latest/api/url.html

您可以在此处查看代理服务器代码 https://github.com/nodejitsu/node-http-proxy/blob/master/lib/http-proxy/index.js

参考行号:64

答案 1 :(得分:3)

这是因为它只适用于字符串。来自https://github.com/nodejitsu/node-http-proxy#options

  

httpProxy.createProxyServer 支持以下选项:

     

目标:要使用url模块解析的url字符串