AJAX请求不通过代理进行路由

时间:2013-01-22 作者:Jonathan Wold

我构建了一个插件,它使用AJAX将URL发布到URL2PNG API,并通过wp\\u remote\\u get将屏幕截图带回WordPress。它在我的开发环境中工作得很好。但在生产中,它需要通过代理。

这就是它变粘的地方。

我们通过wp-config定义了代理,它工作得很好。在测试中,我能够通过代理成功连接到URL2PNG API并返回结果。。

但是

当请求通过AJAX发出时,没有成功。

我已经进行了广泛的测试,以下是我的发现:

直接在插件中发出的请求(例如页面加载)可以通过代理正确路由,不会出现问题。

在浏览器中启动的请求(例如通过AJAX)无法连接。

服务器支持人员仔细检查后发现,请求试图直接进行,而不是使用代理。

你们中有人以前碰到过这个吗?有什么想法吗?

2 个回复
SO网友:Steve

如果您的AJAX是对URL2PNG的“post”,或者是任何协议,那么客户机就是直接这样做的。客户端不知道服务器的代理配置,也不会尊重服务器的代理配置。

考虑到URL2PNG文档的简短阅读,将API密钥和密码放在JavaScript/jQuery中充其量是有风险的,因为您将向任何愿意查看页面/文档源的网站访问者公开这些信息。

也许您需要在WordPress中编写一个处理程序,并直接对您的站点进行AJAX调用。

SO网友:Thyamarkos

您可以让客户端对托管在服务器上的PHP脚本执行AJAX请求,然后让该脚本接管并对URL2PNG API执行请求。。。除此之外,我真的看不到任何方法可以在客户端连接上强制执行代理设置,因为AJAX请求是从客户端机器触发的。

结束

相关推荐

Ajax loading duplicate post

我想首先为这篇文章这么长表示歉意,但我觉得它可能会帮助其他人,因为我有这个问题,我想我最好尽可能详细。我有一个问题,这是循环。php文件多次加载同一帖子,我尝试了防止重复帖子的方法,但没有任何效果。正如您在下面看到的,我正在加载要发布到ajax函数中的函数,我得到了一个成功的调用,但此时我不确定循环文件是否是问题所在。当站点第一次加载时,它加载第一组帖子,然后当它获得第二组帖子时,它很好,但之后的所有内容都是相同的帖子,它就像加载循环文件,但查询被卡住了。有什么建议吗?非常感谢您的帮助。环php文件<