使用Connect和node-http-proxy的HTTP代理

时间:2013-09-10 15:57:30

标签: node.js proxy

我需要一个HTTP代理来访问外部API,同时我正在开发以克服跨域安全限制。

我在这里找到了一些示例代码:http://nthloop.com/blog/local-dev-with-nodejs-proxy/

这看起来就像我正在寻找的那样,不幸的是,当我尝试使用它时,我会及时尝试点击我的本地文件。

控制台中没有错误。

具体问题来自这部分代码:

.use(function(req, res) {
  if (req.url.indexOf(endpoint.prefix) != -1) {
    proxy.proxyRequest(req, res, endpoint);
  }
})

我的本​​地服务器似乎陷入了循环,没有响应,我的控制台中没有错误。

Charles http嗅探器显示已发出请求,但未收到任何响应。

知道如何让这个工作吗?

1 个答案:

答案 0 :(得分:1)

本地服务器陷入困境,因为当if条件在中间件​​链中进一步失败时,中间件不会委托处理案例:

以下内容应解决问题:


  .use(function(req, res, next) {
    if (req.url.indexOf(endpoint.prefix) === 0) {
      proxy.proxyRequest(req, res, endpoint);
    } else next();
  })