PHP CURL返回301位置

时间:2018-04-25 07:27:04

标签: php curl web

我的curl php代码返回301,我无法打印出curl返回的内容。 这是我的代码:

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://subdomain.thinkific.com/api/public/v1/users/3418346");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);

$headers = array();
$headers[] = "X-Auth-Api-Key: myapikey";
$headers[] = "X-Auth-Subdomain: subdomain";
$headers[] = "Content-Type: application/json";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);


$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);
var_dump($result);

这是它返回的内容:

string(142) "301{"Location"=>"https:subdomain.thinkific.com/api/public/v1/users/3418346", "Cache-Control"=>"no-cache"}#" 

我已经尝试过json_decode结果来打印它,仍然是一样的。以及我也试过那些:

curl_setopt($ch, CURLOPT_ENCODING, "");
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_NOBODY, 1); //this one returned string(0) without 301

我需要知道错误是来自我的服务器还是与我的代码有关。 (我没有共享api密钥和子域以保证隐私)。

1 个答案:

答案 0 :(得分:0)

301响应代码如下:

  

HTTP响应状态代码301 Moved Permanently用于   永久URL重定向,意味着使用当前链接或记录   应更新收到响应的URL。新网址   应在响应中包含的“位置”字段中提供。

这意味着您要求移动的资源(网址已更改),您应该使用新提供的网址重试请求!