使用wp_远程_POST响应正文

时间:2014-01-14 作者:Richard

我没有很好的PHP技能,但通常可以摸索一点方向,所以我希望这里的人能帮助我。

我正在从表单向第三方API提交http post,在使用响应值时遇到问题。

他们返回一个URL,其中包含我需要捕获的查询字符串值,以便确定要显示的正确确认方法。

我正在使用wp_remote_post() 具体如下:

$response = wp_remote_post($post_url, array(\'method\' => \'POST\', \'body\' => $body));
提交工作正常,但我在中以HTML流的形式获得返回的URL$response[\'body\'] 但我似乎无法从中获取任何查询字符串值。

所以我的问题是:有没有一种方法可以用它们发送的查询字符串捕获实际的URL值,而不是将其解释为HTML流?

为了测试他们的响应,我创建了一个非常简单的HTML表单,提交时,HTML表单所在页面的URL会从example.com/formexample.com/form?status=1.

希望有人能给我指出正确的方向。

1 个回复
SO网友:s_ha_dum

你的问题没有多大意义。

提交工作正常,但我在$response[\'body\'] 但我似乎无法从中获取任何查询字符串值。

这就是应该发生的事情。您请求网页的方式与单击web浏览器中的链接的方式相同,但编程方式除外。

再一次

有没有办法用它们发送的查询字符串捕获实际的URL值,而不是将其解释为HTML流?

。。。没有什么意义。您正在请求一个网页。“他们”没有发送“带有查询字符串的URL值”。您正在发送一个,服务器正在响应。当您请求一个网页时,您得到的是一个网页。然而,页面主体并不是返回的唯一内容。Check the Codex:

Array
(
    [headers] => Array
        (
            [date] => Thu, 30 Sep 2010 15:16:36 GMT
            [server] => Apache
            [x-powered-by] => PHP/5.3.3
            [x-server] => 10.90.6.243
            [expires] => Thu, 30 Sep 2010 03:16:36 GMT
            [cache-control] => Array
                (
                    [0] => no-store, no-cache, must-revalidate
                    [1] => post-check=0, pre-check=0
                )

            [vary] => Accept-Encoding
            [content-length] => 1641
            [connection] => close
            [content-type] => application/php
        )
    [body] => <html>This is a website!</html>
    [response] => Array
        (
            [code] => 200
            [message] => OK
        )

    [cookies] => Array
        (
        )

)
也许你正在寻找的是标题。

结束