WP_Http重定向后获取最终目的地(WordPress)

时间:2011-04-29 作者:kovshenin

我正在通过WordPress向API发出一些请求,如果API设置中打开了SSL连接,那么API将使用SSL连接。我想确定是否打开或关闭SSL,而不必询问用户是否在他们的帐户上打开了SSL,并且API在重定向方面做得很好,这意味着

如果我访问http://api/endpoint SSL已打开,我被重定向到https://api/endpointhttps://api/endpoint SSL已关闭,我被重定向到http://api/endpoint

所以我的问题是:有没有办法在发射一个WP_Http->request() 何时重定向请求?

我在响应数组中看不到任何相关信息,我只能看到最终的响应,但我不知道来自哪个URL。我能做的就是设置redirection 参数设置为0,并捕获允许的最大重定向错误,但这并不是一目了然的,因为我仍然不知道重定向是从http到https还是仅仅是http下的另一个页面。

我希望这一切都有意义,如果你有任何想法,请告诉我。

谢谢

~K

2 个回复
SO网友:Rarst

您可以使用wp_remote_head() 请求测试时,它应该获取您的响应代码并重定向目标。

SO网友:kingkool68

拉斯特是对的。这很有效。。。

$result = wp_remote_head( $your_url, $your_args );
echo $result[\'headers\'][\'location\'];

结束

相关推荐

Parked domain redirect

我对如何处理这个重定向要求有点不知所措。到目前为止,我已经:驻留在www.domain-A.com上的www.domain-B.com因此,对www.domain-B.com/page1的请求将解析为www.domain-A.com/page1等,但我希望有一个例外:如果用户请求www.domain-B.com的根目录,我希望他们转到www.domain-A.com/pageX,以便在驻车域中一切正常,除非用户转到驻车域的根url。我尝试了WP的重定向插件,但当将www.domain-B.com重定向到w