使用Express和Request构建代理服务器

时间:2015-07-19 15:49:58

标签: node.js express request

我需要构建一个收到请求的小nodejs应用程序:
http://localhost?url=http://www.someurl.com

服务器需要接收请求,从给定的URL下载页面,修改其HTML,然后将其返回给客户端(代理?)

router.get('/', function(req, res, next) {

    // Get url from the query
    var url = decodeURIComponent(encodeURIComponent(req.query.url));

    request(url, function(error, response, html) {
        // ...
        // DO SOME MODIFICATIONS TO THE HTML HERE
        // ...

        res.send(html);
    });
});

我目前的问题是,具有相对URL的css / js文件没有被转发到它们的来源,而是被发送到我的服务器下载,如下所示:
http://localhost/css/some-css-file.css
http://localhost/js/some-js-file.js

这只是问题的一部分,所有其他具有相对URL的资源,以及页面发出的所有不是绝对URL请求的HTTP请求,也会转到root主机,在我的情况下是localhost。

我做过一些研究,但无法完全了解如何正确地做到这一点。 管道功能是我需要的吗?我不太懂得如何使用它。

0 个答案:

没有答案