curl и ошибка 400

TrastMan

Постоялец
Регистрация
13 Ноя 2007
Сообщения
117
Реакции
4
Что теоретически может вызывать? Что это вообще за ошибка синтаксиса? Не всегда, обычно возникает на ресурсах с множественными редиректами. Топик по аналогичной проблеме читал. Интересно кто решил, и где был косяк.
 
по идее curl это библиотека php
какой используется движок? (видимо проблема в функции движка который использует данную библиотеку)
какой используется хостинг?
 
PHP:
// проблема может быть с куками, записывать и читать нужно так
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookiefile");
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookiefile");

// или если парсится через ssl то нужно добавить
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
 
Мне куки в фаил записывать никак, но там все ок. Их в первую очередь просматривал.
А что за движок?

Как бы вывести все заголовки отправляемые курлом, полностью с пробелами переносами и т.д.? Отладка идет на удаленной машине с freebsd.
 
проверяй заголовки, которые посылаешь серверу и заголовки ответа от самого сервера. Вообще тут с ходу трудно понять в чем конкретно может быть ошибка, так приведи полный код.
 
Полный код выложить не могу. Там куки отдаются строкой. А их несколько. Может их нужно разделить или вообще в массиве передать:) Срабатывает раз через три на одном ресурсе. Вообще мистика.
 
Полный код выложить не могу. Там куки отдаются строкой. А их несколько. Может их нужно разделить или вообще в массиве передать:) Срабатывает раз через три на одном ресурсе. Вообще мистика.
ты куки вручную подменяешь что-ли?
 
куки должны где-то храниться, а не парить в воздухе :)
следует пошаманить и попробовать разные варианты, в том числе и передать массивом. я так понял что вы просто подставляете куки, а возможно ресурс хочет записать новые и на основе этого продолжить сессию.
ЗЫ: розделить конечно нужно
 
Куки в переменной. Новые для каждой сессии. Забираю регуляркой. Отдаются строкой вида:
Код:
taram_param=MTl8MHwxfDF8MXwxOXwwfDB8M5wwfDB8MGRmY7RhNzZjNWQzYWM4NzgyYzQ4OGUzMjU4YzU4YWU=; expires=Saturday, 03 Apr 11 14:27:11 GMT; path=/; domain=.domain.com; 73ee99fbcd3377a27e309236e2ad39c3=1301668073-0-!0;path=/;expires= a51d3ce860701c83748ff01f924s1368=aa386f4477a7b15d5935ef744c46e63d;path=/
Может быть так нельзя, должен быть другой формат? Это срабатывает в части случаев, иногда ошибка 400 или malformed. Я не врубаюсь от чего зависит...
 
если кукисы отдает сервер то настоятельно рекомендую запись/чтение так:
PHP:
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookiefile"); 
curl_setopt($ch, CURLOPT_COOKIEJAR, "cookiefile");
ежели выдираете их из яваскрипта то разбейте в массив
 
Назад
Сверху