![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Alpha |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 29.10.2007 Где: Зеленоград Репутация: нет Всего: 1 |
Доброго времени суток.
Господа.. Необходимо получить полностью все заголовки, отправляемые curl_exec'ом. Именно те, которые отправляются удаленному серверу, а не те что он возвратит.. Я понимаю что можно задать все заголовки при помощи curl_setopt($h, CURLOPT_HTTPHEADER, array(...)); но ведь при запросе cURL добавляет двои заголовки.. Надо проконтроллировать этот процесс Кто-нибудь сталкивался с проблемой? Есть какое-нить решение? |
|||
|
||||
hexen |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 15 Регистрация: 3.11.2006 Где: Николаев Репутация: нет Всего: нет |
Привет я думаю тут тебе примеров будет достаточно http://ua2.php.net/curl_setopt
|
|||
|
||||
Alpha |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 29.10.2007 Где: Зеленоград Репутация: нет Всего: 1 |
Опять же прошу обратить внимание на то, что необходимо получить именно ОТПРАВЛЯЕМЫЕ удаленному серверу заголовки, а не ПОЛУЧАЕМЫЕ от сервера.. Мне кажется что метод curl_setopt только устанавливает некие заголовки, возвращаемый им тип данных - bool, то есть получилось или нет. Необходимо именно получить заголовки, которые отправляются методом curl_exec (при запросе добавляются заголовки, которые не были установлены вручную), то есть заголовки, реально отправляемые серверу. |
|||
|
||||
FractalizeR |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 27.12.2007 Где: Россия/Москва Репутация: нет Всего: 4 |
А чем вас не устраивает CURLOPT_WRITEHEADER? Вместо файла заголовки легко можно писать в поток php://memory, а потом оттуда читать.
-------------------- Чтобы поблагодарить или наоборот поругать участника форума лучше пользоваться значками "+" и "-", изменяющими репутацию. Они находятся слева от поста под именем пользователя. |
|||
|
||||
Alpha |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 29.10.2007 Где: Зеленоград Репутация: нет Всего: 1 |
CURLOPT_WRITEHEADER : Файл, в который будут выведены полученные заголовки.
Необходимо получить отправляемые заголовки. То есть те заголовки, которые отправляются серверу для того чтобы получить потом от него ответ... |
|||
|
||||
FractalizeR |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 27.12.2007 Где: Россия/Москва Репутация: нет Всего: 4 |
По идее вот это должно делать то, что вам требуется, но у меня почему-то выводится результат запроса, а не заголовки:
-------------------- Чтобы поблагодарить или наоборот поругать участника форума лучше пользоваться значками "+" и "-", изменяющими репутацию. Они находятся слева от поста под именем пользователя. |
|||
|
||||
Alpha |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 29.10.2007 Где: Зеленоград Репутация: нет Всего: 1 |
curl_getinfo - Gets information about the last transfer;
CURLINFO_HEADER_OUT - The request string sent. Available since PHP 6.0.0 В общем это как раз то что мне нужно, благодарю!. Понятно почему я этого не нашел ранее, на шестую версию я еще не переходил. Жаль что для более ранних версий такого ключика нет.. И странно что на php.net ( http://ru2.php.net/manual/ru/function.curl-getinfo.php ) не полностью описаны все ключи.. |
|||
|
||||
FractalizeR |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 27.12.2007 Где: Россия/Москва Репутация: нет Всего: 4 |
ОПС! В моей версии PHP мануала написано, что работает с 5.1.x! Вот почему у меня на 5.2.x не сработало дома...
Шестерка в глубокой бете пока... Даже 5.3 еще не релизнулся.... Думаю, долго ждать придется. exec не доступен на сервере? curl exe-шник не выполнить? -------------------- Чтобы поблагодарить или наоборот поругать участника форума лучше пользоваться значками "+" и "-", изменяющими репутацию. Они находятся слева от поста под именем пользователя. |
|||
|
||||
Alpha |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 29.10.2007 Где: Зеленоград Репутация: нет Всего: 1 |
Выполнить на текущем сервере можно, правда может понадобиться использование этой наработки на другом сервере, а там это может быть запрещено.
А есть возможность получить отправляемые заголовки путем вызова с коммандной строки? Можете написать решение, если возможно? |
|||
|
||||
FractalizeR |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 273 Регистрация: 27.12.2007 Где: Россия/Москва Репутация: нет Всего: 4 |
Честно говоря, я вообще с curl не работал, но в интернете полно примеров вызова curl через exec или system.
-------------------- Чтобы поблагодарить или наоборот поругать участника форума лучше пользоваться значками "+" и "-", изменяющими репутацию. Они находятся слева от поста под именем пользователя. |
|||
|
||||
navcool |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 29.12.2008 Репутация: нет Всего: нет |
||||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Extensions | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |