我正在使用CURL
数据发送POST
json
个请求,但回复的内容类型仍为text/plain
。
我哪里错了?
$data = array(
"name" => "aaaaa",
"email" => "aaa@aa.com",
"password" =>"aaa",
"gender" => "male",
);
$data1 = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://xxxx.xxx.xxx/register");
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$data1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
$last = curl_getinfo($ch);
print_r($result);
print_r($last);
回应: -
Array
(
[url] => http://xxxx.xxx.xxx/register
[content_type] => text/plain
[http_code] => 403
[header_size] => 358
[request_size] => 277
[filetime] => -1
[ssl_verify_result] => 0
[redirect_count] => 0
[total_time] => 0.067338
[namelookup_time] => 2.2E-5
[connect_time] => 0.000448
[pretransfer_time] => 0.007352
[size_upload] => 161
[size_download] => 9
[speed_download] => 133
[speed_upload] => 2390
[download_content_length] => 9
[upload_content_length] => 161
[starttransfer_time] => 0.06731
[redirect_time] => 0
[redirect_url] =>
)
答案 0 :(得分:2)
这就是回应。这意味着来自服务器的响应是text / plain。您的请求是application / json。如果要设置自己脚本的mime类型,可以使用Header();