javascript - 将您的浏览器变成代理服务器

标签 javascript html websocket cross-browser http-proxy

我在我的服务器上编写了一个逻辑,主要用于执行 curl 请求(例如访问社交网络)。不过,有些网站很快就会阻止我的服务器 IP。

我当然可以使用 VPN 或在每个位置部署多个服务器,但它不会准确,而且某些网络仍然可能会阻止用户帐户。

我正在尝试找到创造性的解决方案以从用户浏览器运行它(征求他的许可是可以的,因为这是他明确尝试执行的操作)虽然我试图避免额外的安装(例如可下载的插件\扩展或桌面应用程序)

有没有办法将客户端浏览器变成服务器代理,从他的机器运行那些 curl 调用而不是从我自己的服务器发送它? (例如,使用网络套接字、轮询等)

最佳答案

这取决于您发出的 curl 请求的具体类型。理论上,您可以使用 XMLHttpRequest 来模拟这些。但是,出于安全原因,通常不允许这些访问托管在不同站点上的资源。 (想象一下它可能导致的问题,例如,如果访问任何网站可能会导致您的浏览器开始向 Facebook 发出请求以代表您发送消息。)基本上它将取决于 Cross-origin request policy。您正在查询的社交网络。如果发送的请求旨在无需身份验证即可公开访问,那么您的系统可能会正常工作,否则可能会被阻止。

关于javascript - 将您的浏览器变成代理服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48679842/

相关文章:

html - 中心模态载荷旋转器 Bootstrap 4

javascript - 事件处理程序返回未定义?

html - 如何捕获 Canvas 中的微小变化并将其发送给所有相互连接且也在使用该 Canvas 的用户?

c# - 如何在 .Net 中优雅地关闭双向 WebSocket

javascript - 是否可以在 VueJS 中外包生命周期钩子(Hook)

javascript - 如何将带有非静态参数的函数作为 JavaScript 中的变量传递给另一个函数?

Javascript Math.cos 和 Math.sin 不准确。有什么解决办法吗?

html - 如果输入为空,则应禁用一个按钮,但另一个按钮也会受到影响

Java Websocket 发出数组

Javascript - 在没有运算符重载的情况下生成表达式