Модераторы: Snowy, Poseidon, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> IdHTTP и Proxy не работает... не работает через прокси 
V
    Опции темы
firs70
  Дата 12.2.2007, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



Не получается запустить программку через прокси сервер (без прокси работает без проблем)...
Использую функцию IdHTTP ввожу там параметры прокси, всё без толку...
Подскажите, пожалуйста, может что не так делаю?

Использую эти функции:
user posted image

Вот скрин программки:
user posted image

Это код программы:
Код

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, IdAntiFreezeBase, IdAntiFreeze, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, IdHTTP;

type
  TForm1 = class(TForm)
    IdHTTP1: TIdHTTP;
    IdAntiFreeze1: TIdAntiFreeze;
    Button1: TButton;
    StaticText1: TStaticText;
    StaticText2: TStaticText;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  lPos: integer;
  str, lRes: string;
begin
lRes := '';
with IdHTTP1 do begin
  Host := 'www.zeke.ru';
  Port := 80;
  Connect;
  try
     lRes := Get('http://www.zeke.ru/stats/');
  finally
    Disconnect;
  end;
end;
if lRes <> '' then
begin
     str:='';
     lPos:=Pos('Количество комментариев:',lRes);
     lPos:=lPos+1+StrLen('Количество комментариев:');
     while (lRes[lPos]<>' ') do
     begin
          str:=str+lRes[lPos];
          lPos:=lPos+1;
     end;
     StaticText2.Caption:=str;
end;

end;
end.



Ссылка на архив где лежит программка, исходник и видео с экрана как я что делаю и какая ошибка выскакивает...
Исходник+видео

Помогите пожалуйста!!!
PM MAIL   Вверх
MetalFan
Дата 12.2.2007, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



1) Обновить индей до последней версии
2) для работы через прокси юзать TidHTTP.ProxyParams. не вижу их у вас в коде. 

качать и смотреть имходник влом)


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
firs70
Дата 12.2.2007, 14:14 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



1) как и где обновить Indy? (нашёл вроде по ссылке http://downloads.atozed.com/indy/indy10.1.5_d7.exe последний, при установке указывает путь как отдельное приложение, а не в директорию делфи... Это нормально?)
2) приведите пример кода (если не сложно конечно) что куда ставить, пожалуйста!!!

Это сообщение отредактировал(а) firs70 - 12.2.2007, 14:38
PM MAIL   Вверх
MetalFan
Дата 12.2.2007, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 14
Всего: 128



1) я пользуюсь последней из 9х индей версией (9.0.18) 
2) 
Код

idHTTP1.ProxyParams.ProxyServer := 'someproxy.com'
idHTTP1.ProxyParams.ProxyPort    := 8080;
memo1.lines.text := idHTTP1.Get('ya.ru');



--------------------
There are always someone smarter than you...
PM MAIL   Вверх
firs70
Дата 12.2.2007, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



1) А как обновить? просто скопировать что ли с заменой файлов? 
2) как это может с моей прогой фурычить?
 я так понимаю надо этот кусочек вставить вот так: 
Код

with IdHTTP1 do begin
//-----------------------------
  idHTTP1.ProxyParams.ProxyServer := '192.168.1.6' - адрес моего проксика
  idHTTP1.ProxyParams.ProxyPort    := 3128; - порт моего проксика
  memo1.lines.text := idHTTP1.Get('ya.ru'); <---- вот это только что я не пойму???
//------------------------
  Host := 'www.zeke.ru';
  Port := 80;
  Connect;
  try
     lRes := Get('http://www.zeke.ru/stats/');
  finally
    Disconnect;
  end;

Ещё бы авторизацию по логину и паролю сделать (сам код какой? idHTTP1.ProxyParams.ProxyUser и idHTTP1.ProxyParams.ProxyPassword так получается?)
PM MAIL   Вверх
Snowy
Дата 12.2.2007, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Код
  Host := 'www.zeke.ru'; // не нужно
  Port := 80; // не нужно
  Connect; // не нужно
  try
     lRes := Get('http://www.zeke.ru/stats/');
  finally
    Disconnect; // не нужно
  end;
Итого:
Код

  try
     lRes := Get('http://www.zeke.ru/stats/');
  except on E: Exception do
    lRes := 'Error: ' + E.Message;
  end;

PM MAIL   Вверх
aktuba
Дата 12.2.2007, 19:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: 9
Всего: 38



Snowy, а почему Connect/Disconnect не нужно? У меня в практике есть случаи, когда программа с ними работала, а без них нет... Или это зависит от версии Delphi? На что влияет?


--------------------
user posted image
PM MAIL WWW Skype   Вверх
firs70
Дата 13.2.2007, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



Ура, всё заработало!!! огромное спасибо!!!  smile   smile 
а как сделать что бы имя пользователя и пароль работали для прокси?

Это сообщение отредактировал(а) firs70 - 13.2.2007, 10:02
PM MAIL   Вверх
Budy
Дата 13.2.2007, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 616
Регистрация: 6.2.2004
Где: Екатеринбург

Репутация: нет
Всего: 2



firs70, удаляешь старые и обновляешь.
1) в Delphi меню "Component/Install Packeges". В списке выбираешь "Internet Direct (Indy) чегото там" (список по алфавиту, в конце списка почти), жмешь "Remove" - удалилось
2) запускаешь файл *.dpk для своей версии Delphi (об этом свидетельствует цифра, у меня это dclIndy70.dpk), запустиЦа Delphi, жмешь "Install", потом "OK"

Добавлено @ 10:02 
А если юзер в домене, как указывать логин и пароль в TidHTTP.ProxyParams?


--------------------
Как ты назовешь свой корабль, так на нем и напишут
user posted image
PM MAIL WWW ICQ   Вверх
firs70
Дата 13.2.2007, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



Budy, спасибо получилось обновить  smile 
Да вот а с именем пользователя и паролем что делать? smile
PM MAIL   Вверх
Budy
Дата 13.2.2007, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 616
Регистрация: 6.2.2004
Где: Екатеринбург

Репутация: нет
Всего: 2



firs70, у тебя юзер тоже в каком-то домене?


--------------------
Как ты назовешь свой корабль, так на нем и напишут
user posted image
PM MAIL WWW ICQ   Вверх
firs70
Дата 13.2.2007, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



У меня идёт аутентификация на прокси не только через IP и порт, но и через логин и пароль... Думаю что и для домена такая же будет авторизация...
Я разобрался! smile 
Код

  idHTTP1.ProxyParams.ProxyServer := '192.168.1.1';
  idHTTP1.ProxyParams.ProxyPort := 8080;
  idHTTP1.ProxyParams.ProxyUsername := 'user';
  idHTTP1.ProxyParams.ProxyPassword := 'pass';


Это сообщение отредактировал(а) firs70 - 13.2.2007, 10:41
PM MAIL   Вверх
Budy
Дата 13.2.2007, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 616
Регистрация: 6.2.2004
Где: Екатеринбург

Репутация: нет
Всего: 2



Странно, я также делаю, однако не работает
Цитата

idHTTP1.ProxyParams.ProxyServer := 'proxy';
idHTTP1.ProxyParams.ProxyPort := 8080;
idHTTP1.ProxyParams.ProxyUsername := 'domen\username';
idHTTP1.ProxyParams.ProxyPassword := 'userpassword';



--------------------
Как ты назовешь свой корабль, так на нем и напишут
user posted image
PM MAIL WWW ICQ   Вверх
firs70
Дата 13.2.2007, 11:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 44
Регистрация: 12.2.2007

Репутация: нет
Всего: нет



Budy, может попробовать имя пользователя по другому указать? (username@domen)

теперь интересует как пробиться на сайт такого плана: https://ssl. имя сайта/index.cgi
PM MAIL   Вверх
Snowy
Дата 13.2.2007, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Домен не нужно указывать.
Прокси автоматом настроен на доменную аутентификацию.
Поэтому домен подразумевается по умолчанию.

Добавлено @ 11:10 
Цитата(firs70 @  13.2.2007,  11:04 Найти цитируемый пост)
 как пробиться на сайт такого плана: https://ssl. имя сайта/index.cgi
Это уже совсем другой вопрос.
http://forum.vingrad.ru/topic-63257/view-all.html
PM MAIL   Вверх
Страницы: (3) Все [1] 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0922 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.