node.js - 修改node-http-proxy传递的内容

标签 node.js proxy node-http-proxy

由于我所代理的 Web 服务存在一些限制,我必须注入(inject)一些 JS 代码,以便它允许 iframe 访问父窗口并执行一些操作。

我用 node-http-proxy 构建了一个代理系统,效果非常好。然而,我花了不可估量的时间尝试修改发送给用户的内容(我自己,也使用 Harmon 等),但没有成功。我在这里找到了一些文章甚至一些问题,但它们都已经过时并且不再有用。

我想知道是否有人可以给我一个关于如何做到这一点的实际例子,因为我无法做到这一点,也许只是目前无法做到?

最佳答案

我没有尝试过 Harmon,但我尝试过 Cheerio 并且它有效。 但是,我使用了 http-mitm-proxy 而不是 node-http-proxy。

如果您使用 http-mitm-proxy,则需要在响应处理程序中返回一个 promise 。否则,代理将继续发送原始响应,而不接受您的更改。

我最近在以下位置编写了另一个代理: https://github.com/noeltimothy/noelsproxy

我很快就会添加响应处理。这个使用回调机制,这意味着在调用者发出信号之前它不会返回响应。

您应该能够使用“cheerio”并以 JQuery 样式更改内容。

关于node.js - 修改node-http-proxy传递的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26058571/

相关文章:

javascript - 是否可以传递数组命令行参数nodejs?

javascript - Node.js 列出文件中所需的所有模块

python - 用于过滤请求的 Apache Thrift 代理

javascript - 离线模式下的 Gulp Browsersync 和 http-proxy-middleware

node.js - 检查请求是否处于重定向状态

javascript - 将大文件从nodejs上传到另一台服务器

node.js - npm 发布原因 'Error: EPERM: operation not permitted, unlink ...' , errno -4048

python - pycurl;连接后从代理收到 HTTP 代码 400

javascript - 如何使用代理合并数组中的相同项目?

node.js - 如何为 http 调用更新位置