| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > Циклический редирект при отправке данных формы мет |
| Автор: TechnoMag 26.10.2010, 11:01 | ||||
Вот как перенаправляется браузер при добавлении объявления на сайт без авторизации:
1 и 2 запросы это валидация формы. 15 и 16 непосредственно добавление объявления. При работе программы почему-то происходит редирект с additem/confirmme на additem на 2 запросе, и далее циклически выполняются 1 и 2. Причем данные формы сохраняются. Отправка запроса программой:
HandleRedirects:=true; RediretcMaximum:=4; // по умолчанию 15, но это сути не меняет Собственно говоря программа не получает страницу, где есть кнопка "Готово >". З.Ы. На счет правильности формирования хидера не уверен. |
| Автор: TechnoMag 26.10.2010, 20:52 |
| Выяснил, что кукиМенеджер не получает куки, а они есть, и нужны. Похоже он вообще не работает. |
| Автор: Matematik 26.10.2010, 23:35 |
| indy во всей красе Тут несколько вариантов: - искать другую библиотеку - править сам indy - писать "костыли" Давно с этим сталкивался. Кривой автоматический редирект просто отключал и отрабатывал перенаправление кучками (см. kостыль). В куки-манагер свой костыль добавил, почему и как сейчас уже не помню, но получилось так - http://dl.dropbox.com/u/11362313/scrot/indihttp.png метод TIdCustomHTTP.ProcessCookies() в модуле IdHttp.pas Это про девятую версию, с десятой не в курсе, но догадываюсь что аналогично. |
| Автор: TechnoMag 27.10.2010, 11:02 |
| В десятой версии приведенный вами кусок кода править не пришлось. Не подскажите, где почитать по управлению куками с отключенным редиректом? |
| Автор: TechnoMag 27.10.2010, 11:42 |
| Сейчас они у меня не запоминаются. |
| Автор: Matematik 27.10.2010, 19:09 |
| Значит в десятой версии ещё что-то поломали. Вот почему я пользовался 9й. |
| Автор: TechnoMag 30.10.2010, 17:49 | ||
Перенес проект на Delphi 7. Стало лучше. Но почему-то cookieManager получает не все куки. Подозреваю, что куки с символом "_" не обрабатываются. Программно добавить такой кук нельзя, т.к. он не константный (генерируемый). Можно ли как-то перехватить куки до поступления их в кукиМенеджер? |