PHP CURL возвращает 301 местоположение - PullRequest
0 голосов
/ 25 апреля 2018

Мой код PHP curl возвращается 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 голосов
/ 25 апреля 2018

Код ответа 301 следующий:

Код состояния ответа HTTP 301 Перемещено навсегда используется для перенаправления постоянного URL-адреса, то есть текущие ссылки или записи, использующие URL-адрес, на который получен ответ, должныбыть обновленным.Новый URL-адрес должен быть указан в поле «Местоположение», включенном в ответ.

ТАК, это означает, что вы запрашиваете ресурс, который был перемещен (URL-адрес изменен), и вам следует повторить запрос снедавно предоставленный URL!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...