ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
[Delphi] Проблема с символом "&" в post-запросе |

28.01.2010, 18:24
|
|
Новичок
Регистрация: 28.12.2009
Сообщений: 27
Провел на форуме: 356537
Репутация:
11
|
|
[Delphi] Проблема с символом "&" в post-запросе
При разработке программы столкнулись с такой проблемой:
Когда в пост-запросе передаётся ссылка такого вида:
http://mysite.ru/go?id=1775497&ssid=gyurtnrutk&midd=gfgfg
символ & распознается как дополнительный параметр в пост запросе и все что после него отправляется отдельно
есть ли какой-то метод корректно передать ссылку?
|
|
|

28.01.2010, 22:41
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Сообщение от frxmaster
При разработке программы столкнулись с такой проблемой:
Когда в пост-запросе передаётся ссылка такого вида:
http://mysite.ru/go?id=1775497&ssid=gyurtnrutk&midd=gfgfg
символ & распознается как дополнительный параметр в пост запросе и все что после него отправляется отдельно
есть ли какой-то метод корректно передать ссылку?
Да ладно?
Чем отправляешь? Если на винсоках, то запрос будет выглядить так:
Код:
POST /go?id=1775497&ssid=gyurtnrutk&midd=gfgfg HTTP/1.1
Host: mysite.ru
....
....
....
postvalue1=postkey1&postvalue2=postkey2
|
|
|

28.01.2010, 23:36
|
Регистрация: 29.05.2002
Сообщений: 1,793
Провел на форуме: 2050916
Репутация:
0
|
|
Сообщение от frxmaster
При разработке программы столкнулись с такой проблемой:
Когда в пост-запросе передаётся ссылка такого вида:
http://mysite.ru/go?id=1775497&ssid=gyurtnrutk&midd=gfgfg
символ & распознается как дополнительный параметр в пост запросе и все что после него отправляется отдельно
есть ли какой-то метод корректно передать ссылку?
Значения параметров POST запроса должны передаваться в URL кодировке. А в ней символ амперсанда заменяется на %26
|
|
|

29.01.2010, 01:22
|
|
Новичок
Регистрация: 25.05.2009
Сообщений: 15
Провел на форуме: 269065
Репутация:
6
|
|
через idhttp
Код:
var
http_client : tidhttp;
params : :tstringlist;
message : string;
begin
message := 'http://domen.ru/12345&6789';
params.add('Message=' + message);
http_client.Post('URL', params);
end;
При этом постятся 2 параметра:
Код:
Message=http://domen.ru/12345
6789=
Хотя должно быть так:
Код:
Message=http://domen.ru/12345&6789
Пробовали функцию TIdURI.URLEncode, не помогло
Значения параметров POST запроса должны передаваться в URL кодировке. А в ней символ амперсанда заменяется на %26
Попробовал руками заменить, проходит нормально но ссылка уже получается битой почемуто
|
|
|

29.01.2010, 01:24
|
|
Участник форума
Регистрация: 27.04.2009
Сообщений: 189
Провел на форуме: 1141766
Репутация:
69
|
|
Сообщение от bmp152
через idhttp
Код:
var
http_client : tidhttp;
params : :tstringlist;
message : string;
begin
message := 'http://domen.ru/12345&6789';
params.add('Message=' + message);
http_client.Post('URL', params);
end;
При этом постятся 2 параметра:
Код:
Message=http://domen.ru/12345
6789=
Хотя должно быть так:
Код:
Message=http://domen.ru/12345&6789
Пробовали функцию TIdURI.URLEncode, не помогло
Попробовал руками заменить, проходит нормально но ссылка уже получается битой почемуто
поставь перед & знак ^ .. может быть поможет...
|
|
|

29.01.2010, 01:36
|
|
Новичок
Регистрация: 25.05.2009
Сообщений: 15
Провел на форуме: 269065
Репутация:
6
|
|
поставь перед & знак ^ .. может быть поможет...
Не помогает, тоже самое - все что после & постится как другой параметр
|
|
|

29.01.2010, 02:13
|
|
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме: 2310282
Репутация:
149
|
|
Попробовал руками заменить, проходит нормально но ссылка уже получается битой почемуто
Что значит битой!?
Приведи реальный пример, на реальном сайте.
|
|
|

29.01.2010, 02:16
|
|
Участник форума
Регистрация: 05.06.2009
Сообщений: 125
Провел на форуме: 1454012
Репутация:
59
|
|
Ты через компоненту шлеш запрос ? если да то там есть опция передавать знак как знак и ли его аски код.
|
|
|

29.01.2010, 03:39
|
|
Новичок
Регистрация: 25.05.2009
Сообщений: 15
Провел на форуме: 269065
Репутация:
6
|
|
Что значит битой!? Приведи реальный пример, на реальном сайте.
Например http://tinyurl.com/62cvp&random - норм редиректит
http://tinyurl.com/62cvp%26random - не редиректит
Ты через компоненту шлеш запрос ? если да то там есть опция передавать знак как знак и ли его аски код.
Да, нашел, спасиб.
Всем спасибо, решили проблему
Последний раз редактировалось bmp152; 29.01.2010 в 10:50..
|
|
|
|
 |
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
[Delphi] Авторизация ВКонтакте
|
Kandi |
С/С++, C#, Delphi, .NET, Asm |
24 |
26.12.2009 01:31 |
|
[delphi] Проблема компиляции
|
R1der23 |
С/С++, C#, Delphi, .NET, Asm |
10 |
20.12.2009 22:24 |
|
Помогите найти откуда берутся 2 параметра в POST запросе?
|
A_V |
PHP, PERL, MySQL, JavaScript |
11 |
08.07.2009 00:00 |
|
[Delphi] Threads (проблема)
|
Flenov |
С/С++, C#, Delphi, .NET, Asm |
11 |
17.03.2009 08:45 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|