Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TIdHTTP заменяет = на ?


DmitriyG. ©   (2009-09-19 16:30:00) 

Почему TIdHTTP автоматически заменяет в адресе вида:
http://blbalba.ru/zzz/n =15&v=2
первый знак равно (после n) на знак вопроса '?', т.е. получается адрес:
http://blbalba.ru/zzz/n ?15&v=2

var
http :TIdHTTP;
stream : TMemoryStream;
begin
...
 http.Get(' http://blbalba.ru/zzz/n=15&v=2', stream);
...


Как можно избавиться от этого?


DmitryiG   (2009-09-21 23:34:00) [1]

С этим все впорядке... Уже использую его :-)
Просто было интересно разобраться...
А Инди насколько я знаю у меня тоже 10-ка...


sniknik   (2009-09-21 16:59:00) [2]

> Надо скачать новое...
сначала попробуй исправленный в sniknik ©   (20.09.09 22:45) [12] урл. такой меняет еще что то?


sniknik   (2009-09-21 16:54:00) [3]

у меня D7, но инди 10й (в 9ке у меня были какие то проблемы с ssl, не помню, пришлось перейти)


DmitryiG   (2009-09-21 09:25:00) [4]

Странно, я использовал Indy и то которое идет вместе с Delphi 2007 и Delphi 2009.... Оба возвращают 404, а снифер показывает ?...
Надо скачать новое...


sniknik   (2009-09-20 23:01:00) [5]

и еще кстати, я тут проверил данную ссылку, и никакой автоматической замены на ? не произошло... и урл доступен и картинку сохранил(проверить содержимое стрими), читаема получилась...


DmitriyG.   (2009-09-20 22:55:00) [6]

Гм... Действительно - это выход... Видно смогли от дурака защититься :-)
Спасибо большое, вроде бы все заработало...


sniknik   (2009-09-20 22:54:00) [7]

кстати, а пошли "это" post-ом, и все дела, не должно заменится, а сервер разберется... раз такой умный. :)


sniknik   (2009-09-20 22:45:00) [8]

> А такой адрес:
это просто сервер с "защитой от дурака", а должно быть так
http://khm.google.com/kh?v=45&hl=ru&x=1&y=1&z=2&s=G


McSimm   (2009-09-20 15:57:00) [9]


> а такого точно не может быть. (не будут же каждый вариант
> значения отдельного параметра регистрировать как отдельный
> юрл...)

Вполне может такое быть, mod_rewrite позволяет преобразовывать части url в параметры.
Использование = в url_path не запрещается, просто отмечается, что этот (и некоторые другие) символ может иметь специальное значение в рамках схемы


> еще одно возможное грубое нарушение

Нет нарушения.


DmitriyG.   (2009-09-20 14:05:00) [10]

Ладно...
А такой адрес:
' http://khm.google.com/kh/v=45&hl=ru&x=1&y=1&z=2&s=G'
(извиняюсь за еще одно возможное грубое нарушение...)


sniknik   (2009-09-20 10:10:00) [11]

> Как можно избавиться от этого?
зачем? у тебя же строка запроса не верная, нет разделителя между юрл и параметрами, вот от этого надо избавляться... а там глядишь к правильному у TIdHTTP не будет претензий, и ничего он тебе не заменит...

> Но если сайт принимает строку именно в таком формате и с вопросом - ресурс недоступен!!!
это невозможно, без разделителя вся строка это адрес, а такого точно не может быть. (не будут же каждый вариант значения отдельного параметра регистрировать как отдельный юрл...)


Anatoly Podgoretsky   (2009-09-20 00:08:00) [12]

Надо сайт исправлять, поскольку подобный URL это грубое нарушение.


DmitriyG.   (2009-09-19 19:24:00) [13]

Исходники от нового Indy еще не скачал, но в том, который идет с Delphi 7 вроде бы ничего подобного сходу не нашел...Я сейчас использую инди для Delphi 2007 и 2009


Медвежонок Пятачок   (2009-09-19 17:32:00) [14]

исходники же есть


DmitriyG.   (2009-09-19 17:29:00) [15]

Да просто казалось, что должно быть свойство, отвечающее за это...


Медвежонок Пятачок   (2009-09-19 17:29:00) [16]

либо на CreateOleObject('MSXML2.XMLHTTP');


Медвежонок Пятачок   (2009-09-19 17:24:00) [17]

замени идшттп на идтспклиента и делай все вручную


DmitriyG.   (2009-09-19 17:16:00) [18]

Это понятно... Но если сайт принимает строку именно в таком формате и с вопросом - ресурс недоступен!!!


Медвежонок Пятачок   (2009-09-19 17:06:00) [19]

зачем избавляться от этого?
если правильный разделитель гет-параметров это и есть знак вопроса?


Наверх

Титульная страница Поиск, карта сайта Написать письмо