|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Проблемы с indy - get
Весь прикол в том, что если отправлять запрос из браузера, то все ок.
И если попробовать через webbrowser отправить, то тоже все проходит гладко. А вот когда Я пробую задействаовать индюшку, то вылетает ошибка На synapse попробовал тоже - ошибка 500. PHP код:
Еще обнаружился один прикол. Когда шло несколько запросов подряд, то она второй запихала в post первого |
#2
|
||||
|
||||
закодируй параметры в URI, т.е. через %
Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
rafffkaaa (26.07.2012)
|
#3
|
|||
|
|||
Цитата:
гугл молчит. Не могу разобраться уже третий день. Все встало p.s про "несколько запросов подряд" вроде разобрался - на vingarde писали, что это баг indy9 |
#4
|
||||
|
||||
Код:
uses WinInet, ... type TForm1 = class(TForm) Edit1: TEdit; procedure FormCreate(Sender: TObject); ... procedure TForm1.FormCreate(Sender: TObject); var lpUrlComponents: URL_COMPONENTS; buf: array [0..$ff] of Char; dwUrlLength: DWORD; begin ZeroMemory(@lpUrlComponents, SizeOf(URL_COMPONENTS)); lpUrlComponents.dwStructSize:=SizeOf(URL_COMPONENTS); lpUrlComponents.lpszScheme:='http'; lpUrlComponents.lpszHostName:='msdn.microsoft.com'; lpUrlComponents.nPort:=80; lpUrlComponents.lpszUrlPath:='en-us/library/windows/desktop/aa384473.aspx'; lpUrlComponents.lpszExtraInfo:='?param1=true¶m2=нет'; dwUrlLength:=SizeOf(buf); if not InternetCreateUrl(lpUrlComponents, ICU_ESCAPE, @buf[0], dwUrlLength) then RaiseLastOSError else Edit1.Text:=Copy(buf, 1, dwUrlLength); end; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
rafffkaaa (26.07.2012)
|
#5
|
|||
|
|||
Вот полное описание проблемы:
Здравствуйте. Уже не первый день немогу понять в чем ошибка. Если беру готовый запрос(get) и вставляю его в браузер, то все проходит нормально. А если отправляю запрос с delphi (пробывал indy, synapse), то запрос не отправляеться (в сниффере пусто). Если использовать webbrowser, то в новом проекте все ок, а в котором пишу, то вылетает ошибка (страница не найдена в интернете: "ссылка". Перебивал ссылку в браузер => все ok). Post запрос(из indy, через synapse неумею) сначало тоже не отправлялся, но после ansitoutf8 начал отправляться. Но скрипт ничего в ответ не выдал. Скрипт на php писал Я. В другом проекте он прекрасно работал => проблема в скрипте отпадает, т.к Я его не исправлял. Единственное различие в том, что раньше скрипт находился в папке publik_html (<-как-то так) Насчет хостинга неуверен, пробывал на другом хостинге, тоже самое. Ставил timeout 10 секунд, непомогло. Вот собственно код: Код:
procedure TForm5.Getz; var salt: string; // переменная для соли hash: string; // для хэша zapros: string; // для запроса link: string; // ссылку которую получаем begin link := edit1.Text+'@'+ms; salt := '13qus'; // это соль salt := salt+link+link+salt+salt; hash := md5(trim(salt)); // делаем хэш zapros := 'http://server.odbot.ru/server.php?ip='+ip+'&link='+link+'&hash='+hash; try begin IdHTTP3.Get(zapros); // вот тут собственно проблемы Edit1.Enabled := false; ComboBox1.Enabled := false; klm := 1; end; except begin ShowMessage('Ошибко'); Exit; end; end; end; p.s ip параметр не критичный, можете указать вообще любой, klm глобальная переменная p.s.s Также: Ошибка вылетает такая: "Project Project1.exe raised exception class EidHTTPProtocolException with message 'ace('d_',");' . Process stopped. Use Step or Run to contine. В ResponseText пустота. Перенос скомпилинного и переименованного файла в другую папку не помог. И еще когда Я хотел посмотреть код ошибки, чтоб разобраться в чем ошибка, то вместо кода ошибки показывало содержимое главной страницы сайта |
#6
|
||||
|
||||
да вроде все работает:
Код:
var AIdHTTP: TIdHTTP; begin AIdHTTP:=TIdHTTP.Create(Self); try Memo1.Text:=AIdHTTP.Get('http://server.odbot.ru/server.php?ip=127.0.0.1&link=gg@ppc&hash=123'); // hack detected finally AIdHTTP.Free; end; end; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
rafffkaaa (26.07.2012)
|
#7
|
|||
|
|||
Цитата:
А при ромощи моего скрипта не пробывали отослать? |
#8
|
||||
|
||||
Цитата:
Цитата:
Пишу программы за еду. __________________ |
#9
|
|||
|
|||
edit1.text и ms любые значения.
они не критичны. Модуль md5.(прикрепил) |
#10
|
|||
|
|||
проблема решена, в переменной ip были символы перевода каретки.
|