Поиск сообщества
Показаны результаты для тегов 'idhttp'.
Найдено: 8 результатов
-
У меня есть код, который должен скачивать файл с сайта: var LoadFile : TMemoryStream; begin LoadFile := TMemoryStream.Create; IdHTTP1.Get('https://sitename.pro/Folder/FileName.txt', LoadFile); LoadFile.SaveToFile('FileName.txt'); LoadFile.Free; end; Проблема однако в том, что вместо скачивания файла программа выдает: Could not load SSL library, хотя я никакой "SSL library" не просил)). При этом, когда я попробовал скачать файл с сайта работающего по старинке, на http (в отличие от https), все скачалось нормально, то есть проблема явно в данном протоколе. Поиск по Интернету ничего не дал.
-
Есть такой вот код для работы с гугл переводчиком: procedure TfrmMain.GTranslate; var Data: TStringList; S: String; begin IdHTTP1.Request.UserAgent := 'Mozilla/5.0 (Windows; U; Windows NT 6.1; ru-RU) Gecko/20100625 Firefox/3.6.6'; Data := TStringList.Create; try Data.Text := ('client=x'#13#10 + 'text=' + Edit1.Text + #13#10 + 'hl=en'#13#10 + 'sl=en'#13#10 + 'tl=ru'); try S := (IdHTTP1.Post('http://translate.google.ru/translate_a/t', Data)); except on E: exception do ShowMessage(E.ClassName + ' error raised, with message : ' + E.Message); end; finally Data.Free; end; end; Работает без проблем. Переделал его для NetHttpClient, практически один в один и вместо перевода получаю html страницу с гугл капчей. Типа такой как получаю если заходить через браузер http://translate.google.ru/translate_a/t?client=x&text=Hello&hl=en&sl=en&tl=ru Так в чем между ними разница что получаю разный результат? PS: Просто я в проекте и так использую NetHttpClient, хотелось бы на нем и сделать а не плодить кучу однотипных компонентов.
-
Здравствуйте! Вопрос такой: Есть процедура: Если переменные inn,capcha и capchaToken указаны правильно то Idhttp работает как надо, если inn или capcha не верны то прим Idhttp.post программа выдает ошибку: а хочется получить данные как в анализаторе: Как можно это сделать?
-
Добрый день! Возникла необходимость из программы на Android отправлять запросы на web сервер и получать ответ. Пробую использовать TidHTTP: - кинул на форму компонент TidHTTP; - вызываю: procedure TForm1.btSendClick(Sender: TObject); var list: TStringList; s: string; begin list := TStringList.Create; try list.Add('1'); try s := IdHTTP1.Post('http://127.0.0.1', list); ShowMessage(s); except on E: Exception do ShowMessage('Error: ' + E.Message); end; finally FreeAndNil(list); end; end; - в результате программа закрывается. Без всяких сообщений. Запускал на смартфоне Samsung Galaxy A3 (2016) Android 6.0.1. В чем может быть проблема?
-
При написании кода под Windows я обычно использую WinNT, чтобы определить, выходит ли пользователь в Интернет через файрвол, а также для проверки сертификата сайта, когда клиент подключается к нему. Чем можно заменить WinNT под Firemonkey, чтобы выполнить эти задачи – проверку наличия файрвола и проверку сертификата сайта? Спасибо.
- 2 ответа
-
- сертификат сайта
- firewall
-
(и ещё 1 )
C тегом:
-
Так как не получается работать с IdHTTP в сервисе, решил попробовать компонент NetHTTPClient. Бросил NetHTTPClient1 на форму. Хочу открыть адрес https://ya.ru В папку \Win32\Debug положил libeay32.dll и ssleay32.dll (они рабочие, проверены с IdHTTP) Код (пока тестирую на обычном приложении, а не в сервисе): Получаю access violation в System.Net.HTTPClient в строке 1965 if (Result.Value.Chars[0] = '"') and (Result.Value[High(Result.Value)] = '"') then видимо из-за того что Result.Value пустой. А если попробовать открыть https://mail.ru такого не происходит и страница нормально скачивается. В чем проблема?
- 8 ответов
-
- NetHTTPClient
- SSL
-
(и ещё 1 )
C тегом:
-
Подскажите пожалуйста как избежать данную проблему, пытаюсь загрузить исходный код страницы IdHTTP1.Get('сайт') а Indy говорит что ее не существует http/1.1 404 not found
-
Доброго вам времени суток, уважаемые форумчане. Столкнулся с проблемой нажатия на кнопку сайта. Инструментарий: Delphi XE7 --> FM; Indy 10.6.0.5169 --> idHTTP Свойства idHTTP1: CookieManager | IdCookieManager1 AllowCookies | True HandleRedirects | True Процедура в разрабатываемом приложении: procedure SelenaURL.SendData(Captcha: string); var i: Integer; Text: String; begin try Params := TStringList.Create; Params.Add('title=' + fMain.eTitle.Text); Params.Add('cat_id=121'); case fMain.cbCategory.ItemIndex of 0: Params.Add('pred=1'); 1: Params.Add('pred=2'); end; Params.Add('price=' + fMain.eCost.Text); Params.Add('currency=1'); case fMain.cbCity.ItemIndex of 0: Params.Add('city_id=1'); 1: Params.Add('city_id=2'); 2: Params.Add('city_id=3'); 3: Params.Add('city_id=4'); 4: Params.Add('city_id=5'); end; Text := fMain.mText.Lines[0]; for i := 1 to fMain.mText.Lines.Count - 1 do Text := Text + #13#10 + fMain.mText.Lines[i]; Params.Add('description=' + Text); Params.Add('name_from=' + fMain.eName.Text); Params.Add('email_from=' + fMain.eMail.Text); Params.Add('phone_from=' + fMain.ePhone.Text); for i := 1 to fMain.ListBox2.Count do Params.Add('photo_' + IntToStr(i) + '=' + fMain.ListBox2.Items[i - 1]); Params.Add('period=30'); Params.Add('captcha=' + Captcha); Params.Add('submit=Добавить объявление'); // Что с ним, что без него запрос не уходит Response := fMain.IdHTTP1.Post(aURL, Params); fMain.mText.Lines.Clear; fMain.mText.Text := Response; // Тут можно увидеть, что переадресации никакой не было. Где стояли, там и стоим finally Params.Free; end; end; Код самой кнопки: <input class="buttom" onclick="addForm(document.getElementById('f'))" value="Добавить объявление" type="submit"> Код процедуры, выполняемая кнопкой: /* Подгружаем форму - добавить объявление */ function addForm(value) { form_result = document.getElementById('ajax_result'); form_indicator = document.getElementById('ajax_indicator'); form_result.className = 'ajaxform-result-hide'; form_indicator.innerHTML = '<img src="'+AJAX_DIR+'templates/default/images/indicator.gif">'; form_indicator.className = 'ajaxform-indicator'; JsHttpRequest.query( AJAX_DIR+'ajax.php?act=add', { q: value }, function(result, errors) { form_result.innerHTML = ''; if (result['q']) { form_result.innerHTML = '<div class="ajaxform-result"><fieldset class="fieldset_error"><legend class="legend_error">Ошибка:</legend>'+result['q']+'</fieldset></div>'; form_result.className = ''; form_indicator.innerHTML = ''; document.getElementById("ajax_form").style.display = 'block'; }else{ if(result['action'] == '3') { form_result.innerHTML = '<div class="ajaxform-result"><fieldset class="fieldset_msg"><legend class="legend_msg">Сообщение:</legend><div class="msg">Ваше объявление было отправлено на проверку. <a href="'+AJAX_DIR+'">Перейти на главную страницу</a>.<br><br>Ваши данные: <br><b>ID:</b> '+result['id']+' <br><b>Пароль:</b> '+result['password']+'</div></fieldset>'; }else{ form_result.innerHTML = '<div class="ajaxform-result"><fieldset class="fieldset_msg"><legend class="legend_msg">Сообщение:</legend><div class="msg">Ваше объявление "<b>ID'+result['id']+'</b>" было успешно добавлено. <a href="'+AJAX_DIR+''+result['id']+'.html">Перейти к объявлению</a>.<br><br>Ваши данные: <br><b>ID:</b> '+result['id']+' <br><b>Пароль:</b> '+result['password']+'</div></fieldset>'; } form_result.className = ''; form_indicator.innerHTML = ''; document.getElementById("ajax_form").style.display = 'none'; } }, false // не кэшировать ); } /* конец */ Наведите хотя бы в какую сторону копать. Срочно необходимо завершить приложение, но возникла данная проблема. Буду рад любой вашей помощи. Спасибо!