Запрос имеет неверное имя заголовка. Ошибка HTTP 400.

Это мой запрос curl (нашел его в каком-то старом ответе stackoverflow):

$headers[]  = "Mozilla/5.0 (Android 4.4; Mobile; rv:41.0) Gecko/41.0 Firefox/41.0";
$headers[]  = "Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
$headers[]  = "Accept-Language:en-us,en;q=0.5";
$headers[]  = "Accept-Encoding:gzip,deflate";
$headers[]  = "Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$headers[]  = "Keep-Alive:115";
$headers[]  = "Connection:keep-alive";
$headers[]  = "Cache-Control:max-age=0";

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_ENCODING, "gzip");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
$data = curl_exec($curl);
curl_close($curl);

return $data;

И я получаю эту ошибку:

Неверный запрос — неверный заголовок

Ошибка HTTP 400. Запрос содержит недопустимое имя заголовка.

Есть ли у вас идеи, почему я получаю эту ошибку и как ее исправить?

0

Решение

Я думаю, что вы должны использовать CURLOPT_USERAGENT за User-Agent (мой рекомендуемый путь)

curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Android 4.4; Mobile; rv:41.0) Gecko/41.0 Firefox/41.0');

ИЛИ ЖЕ (не играл с этим)

$headers[]  = "User-Agent:Mozilla/5.0 (Android 4.4; Mobile; rv:41.0) Gecko/41.0 Firefox/41.0";

вместо

$headers[]  = "Mozilla/5.0 (Android 4.4; Mobile; rv:41.0) Gecko/41.0 Firefox/41.0";
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]