我有一个与外部API交互的应用程序。当远程服务发布包含特定状态的请求时,我需要通过外部URL将该帖子的全部内容重新发送到其他应用程序。
是否有可能获取整个$ _REQUEST并将其重新发布到其他位置,或者我是否必须遍历$ _REQUEST并构建一个新数组以便在需要的位置发布?
答案 0 :(得分:3)
$ _ REQUEST是一个数组。所以是的,你可以把它贴在你需要的地方。只需使用cURL
答案 1 :(得分:2)
如果我正确理解了您的问题,您可以使用CURL执行此操作:
$ch = curl_init("http://sitename.com/");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, "field1=value1&field2=value2");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
其中“field1 = value1& field2 = value2”将替换为您的args
此外,您还可以获得操作完成的结果:
<$> $ result = curl_exec($ ch)之后;使用方法: $result_info = curl_getinfo($ch);
现在在$result_info['http_code']
中放置了HTTP CODE。如果它是200那么SUCCESS(当然代码在某些情况下可能会有所不同 - 例如,当它被人工配置为另一个代码时)
答案 2 :(得分:1)
你应该区分$ _POST和$ _GET值。
$ _ REQUEST表示GET 和 POST的所有值,如果在$ _POST中设置了一个键,并且$ _POST的$ _GET值在保存到$ _REQUEST数组时优先。< / p>
将通过$ _GET传递的所有内容附加到URL,并从请求正文中的$ _POST发送所有内容。
答案 3 :(得分:1)
如果两个段都是POST方法,使用$HTTP_RAW_POST_DATA
可以节省重新编码的开销
答案 4 :(得分:0)
Lookup CURL,这应该很容易:
答案 5 :(得分:0)
我会使用cURL扩展名。