Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Символ + и TIdURI.URLEncode, как правильно?   Найти похожие ветки 

 
sniknik ©   (2010-03-02 12:16) [0]

Наткнулся на ситуацию когда мой GET запрос не обрабатывался сервером из-за того что в данных параметра были плюсы (+), и он их менял пробелы.
НО, в другие места проходило и так... (+ не проходил в пути, а данных легко)

В общем посмотрел и нашел, что могут быть 2 варианта как с + так и с его заменой на %2B. ...

А как более правильно? Подозреваю что с %2B, т.к. так проходит и там и там... но, должен же быть какой то стандарт.

В общем то фигня это все, просто получается, что в Indy глюк (10 последняя официальная версия). -
class function TIdURI.ParamsEncode(const ASrc: string): string;
var
 i: Integer;
const
 UnsafeChars = "*#%<> []";  {do not localize}
....


надо делать аналогично
class function TIdURI.PathEncode(const ASrc: string): string;
const
 UnsafeChars = "*#%<>+ []";  {do not localize}
....


 
Palladin ©   (2010-03-02 12:55) [1]

и так и так правильно, тут в другом дело, например введи в гугле в строке поиска "http + symbol" нажми поиск и посмотри в строчку запроса
а так, знак "+" не запрещен к использованию


 
Anatoly Podgoretsky ©   (2010-03-02 13:04) [2]

> sniknik  (02.03.2010 12:16:00)  [0]

Правильно с %2B, поскольку + заменяет пробел. Это и есть стандарт.


 
sniknik ©   (2010-03-02 15:54) [3]

> Правильно с %2B, поскольку + заменяет пробел. Это и есть стандарт.
В том то и дело, меняет, но в начале работал с серверами где не меняет, и в Indy формировало также, я и не "парился", фактически и не смотрел туда.
А тут раз и засада... пришлось менять "индевый" URLEncode на свой...



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.054 c
2-1271844119
Учащийся
2010-04-21 14:01
2010.08.27
Почему не работает программа?


9-1187036732
Mr.Vlad
2007-08-14 00:25
2010.08.27
GLODEManager


2-1268906424
cyber-pilot
2010-03-18 13:00
2010.08.27
Проблемы с кнопкой на панеле задач


2-1270824084
V
2010-04-09 18:41
2010.08.27
CreateDir


6-1218572715
grisme
2008-08-13 00:25
2010.08.27
recv + HTTP в блокирующем режиме