我正在尝试学习如何通过CURL将PHP发布到另一个PHP页面并阅读响应。
我有2页。第一个是test.php
<?php
$array['User'] = array();
$array['User']['AppId'] = 'sdfgfd9-sdfgsdf-sdfgfdgfgff';
$array['User']['UserName'] = 'me@example.co.uk';
$array['User']['Token'] = 'fsdgf5-455g-223ee-bggg-asdsadsda';
$array['User']['Timestamp'] = '2018-05-30BST16:28:293600';
$url = "https://www.myurl.co.uk/api/index.php";
$content = json_encode($array['User']);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER,
array("Content-type: application/json"));
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $content);
$json_response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ( $status != 201 )
{
die("Error: call to URL $url failed with status $status, response
$json_response, curl_error " . curl_error($curl) . ", curl_errno " .
curl_errno($curl));
}
curl_close($curl);
$response = json_decode($json_response, true);
echo $response;
?>
然后在页面上我从中得到数据;
<?php
$userArray = array();
$userArray = trim(file_get_contents("php://input"));
echo json_decode($userArray, true);
?>
当我在test.php上运行脚本时,我得到的是;
Error: call to URL https://www.myurl.co.uk/api/index.php failed with status 200, response Array, curl_error , curl_errno 0
我不明白这个错误足以理解要改变什么才能使其发挥作用?
答案 0 :(得分:0)
尝试: curl_setopt($ curl,CURLOPT_HTTPHEADER, 阵列( &#39;方法&#39; =&GT; &#39; POST&#39 ;, &#39;头&#39; =&GT; &#39;内容类型:application / json&#39; 。 &#34; \ r \ n&#34; 。 &#39;内容长度:&#39; 。 strlen($ data_string)。 &#34; \ r \ n&#34 ;, &#39;内容&#39; =&GT; $ data_string, );
或类似的