Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2011, 17:19   #1
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию Руский POST

Знаю что тема заезжена, но всё же у меня ни чего не выходит, вод код
Код:
sec.Add('submit='+AnsitoUTF8('Войти в аккаунт'));
я уже и UTF8toAnsi, и все encoding'и что я нашёл перепробывал, и ansistring, уже не знаю как отправить что бы получилось
submit=Войти в аккаунт. Может это связанно с тем что у меня Delphi XE, но прост нет возможности на ранюю версию перейти, в чём может быть ошибка? А то выходят знаки вопроса только в место русского текста
bulldog5293 вне форума Ответить с цитированием
Старый 28.04.2011, 18:06   #2
Usov
Форумчанин
 
Аватар для Usov
 
Регистрация: 29.09.2009
Сообщений: 228
По умолчанию

Подобные вещи делал с помощью UTF8Encode и отключением в TIdHTTP помоему в свойсва HTTPOptions отключал ForceEndodeParams (может в синтаксисе ошибся), чтоб некоторые символы не сам компонент не конвертил.
Usov вне форума Ответить с цитированием
Старый 28.04.2011, 18:31   #3
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

А где этот HTTPOptions искачть, что бы отключить ForceEndodeParams, просто впервые про такое читаю, да и работаю в потоке

А есть ли ещё способы, просто этот не помог

Раз INDY в Delphi XE не побароть, я решил пойти другим путём и посматрев в снифере узнал что 'Войти в аккаунт' выглядит как '%C2%EE%E9%F2%E8+%E2+%E0%EA%EA%E0%F 3%ED%F2' и хотелось уточнить как мне такое в poste передать

Последний раз редактировалось Stilet; 30.04.2011 в 13:49.
bulldog5293 вне форума Ответить с цитированием
Старый 29.04.2011, 23:17   #4
Usov
Форумчанин
 
Аватар для Usov
 
Регистрация: 29.09.2009
Сообщений: 228
По умолчанию

конвертишь в утф8, потом оборачиваешь в шестнадцатеричный код
Usov вне форума Ответить с цитированием
Старый 30.04.2011, 00:10   #5
bulldog5293
Форумчанин
 
Регистрация: 13.05.2010
Сообщений: 670
По умолчанию

А как в шестнадцатеричный код оборачивать, просто первый раз о таком слышу
bulldog5293 вне форума Ответить с цитированием
Старый 30.04.2011, 11:34   #6
Usov
Форумчанин
 
Аватар для Usov
 
Регистрация: 29.09.2009
Сообщений: 228
По умолчанию

в библиотеке Indy есть подобный метод, или вот:
Код:
function UrlEncode(S : String) : String;
var
    I : Integer;
begin
    Result := '';
    for I := 1 to Length(S) do begin
        if AnsiChar(S[I]) in ['0'..'9', 'A'..'Z', 'a'..'z'] then
            Result := Result + S[I]
        else
            Result := Result + '%' + IntToHex(Ord(S[I]), 2);
    end;
end;
Usov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
руский храмоножка bulldog5293 Работа с сетью в Delphi 15 14.07.2010 15:47
руский C# Cpluser Общие вопросы .NET 2 18.12.2009 22:34
Руский чи український sinid О форуме и сайтах клуба 3 24.01.2009 09:27
Руский текст Байт Общие вопросы C/C++ 4 09.11.2008 16:05