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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2013, 17:48   #11
tolprog
Пользователь
 
Регистрация: 29.03.2013
Сообщений: 33
По умолчанию

Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    idhttp1: TIdHTTP;
    procedure FormClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormClick(Sender: TObject);
begin
showmessage(idhttp1.get('ya.ru'));
end;

end.
Чет выдает ошибку "Project Project1.exe raised exception class EReadError with message 'Property ContentRangeInstanceLength does not exist'. Process stopped. Use Step or Run to continue."
tolprog вне форума Ответить с цитированием
Старый 30.03.2013, 18:57   #12
Pearl777
Форумчанин
 
Регистрация: 04.01.2013
Сообщений: 171
По умолчанию

Код:
showmessage(idhttp1.get('http://ya.ru'));
Pearl777 вне форума Ответить с цитированием
Старый 30.03.2013, 23:50   #13
tolprog
Пользователь
 
Регистрация: 29.03.2013
Сообщений: 33
По умолчанию

У меня еще одна просьба. Можете написать еще один пример отправки post-запроса с параметрами, к примеру авторизации. Хочу узнать какую часть полей нужно захватывать из кода страницы и как строить строку-параметр.
tolprog вне форума Ответить с цитированием
Старый 31.03.2013, 00:08   #14
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

http://programmersforum.ru/showthread.php?t=229716 - пример авторизации на сайте zhyk (причем, есть код для Indy и Synapse).
Берете сниффер, например, Charles, и перехватываете запросы. Затем внимательно их изучаете и пишите то же самое на дельфи.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 31.03.2013, 00:43   #15
tolprog
Пользователь
 
Регистрация: 29.03.2013
Сообщений: 33
По умолчанию

Код:
var data: tstringlist;
    idhttp1: TIdHTTP;
    text: string;
begin
idhttp1:=TIdHTTP.create(nil);
data:=tstringlist.Create;
data.Clear;
idhttp1.Request.useragent:='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.7.62 Version/11.01';
idhttp1.Host:='сайт';
Data.Add('user_name=паорпар');
data.Add('user_password=олпролп');
idhttp1.Connect;
try
text:=idhttp1.Post('http://сайт',data);
finally
idhttp1.disconnect;
end;
idhttp1.Free;
Как исправить ошибку?
Цитата:
Progect Progect2.exe raised class EIdHTTPProtocolException with message 'HTTP/1.1 302 Found'. Process stopped. Use Step or Run to continue.
tolprog вне форума Ответить с цитированием
Старый 31.03.2013, 01:07   #16
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,285
По умолчанию

Это исключение означает, что сайт перенаправляет на другую страницу.
Можно автоматически переходить - idhttp1.HandleRedirects:=true.
Или обрабатывать все редиректы вручную, отлавливая их try except. Учтите, что в режиме отладки даже отловленные исключения будут показываться на экран.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 31.03.2013, 01:15   #17
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,022
По умолчанию

Цитата:
Как исправить ошибку?
читать надо в начале учиться, и только потом программировать
eval вне форума Ответить с цитированием
Старый 31.03.2013, 01:18   #18
tolprog
Пользователь
 
Регистрация: 29.03.2013
Сообщений: 33
По умолчанию

Цитата:
Это исключение означает, что сайт перенаправляет на другую страницу.
Можно автоматически переходить - idhttp1.HandleRedirects:=true.
Или обрабатывать все редиректы вручную, отлавливая их try except. Учтите, что в режиме отладки даже отловленные исключения будут показываться на экран.
Спасибо огромное, помогло.)))
tolprog вне форума Ответить с цитированием
Старый 31.03.2013, 01:21   #19
tolprog
Пользователь
 
Регистрация: 29.03.2013
Сообщений: 33
По умолчанию

Цитата:
читать надо в начале учиться, и только потом программировать
Читать скучно, вскоре и охота программировать отпадет. Лучшая теория это практика.
tolprog вне форума Ответить с цитированием
Старый 31.03.2013, 12:26   #20
tolprog
Пользователь
 
Регистрация: 29.03.2013
Сообщений: 33
По умолчанию

Код:
var data: tstringlist;
    idhttp1: TIdHTTP;
    text: string;
    cm: TIdCookieManager;
begin
idhttp1:=TIdHTTP.create(nil);
data:=tstringlist.Create;
cm:=TIdCookieManager.Create(idhttp1);
data.Clear;
idhttp1.CookieManager:=cm;
idhttp1.Request.useragent:='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.7.62 Version/11.01';
idhttp1.Host:='g.meni.mobi';
idhttp1.HandleRedirects:=true;
Data.Add('user_name=???????');
data.add('user_password=??????');
idhttp1.Connect;
 try
 text:=idhttp1.Post('http://g.meni.mobi/login/',data);
 finally
 idhttp1.disconnect;
 end;
if Pos(AnsiToUtf8('title="Çîëîòî"'),text)>0 then writeln('Avtorization +')
                                                      else Writeln('Avtorization -');
idhttp1.Free;
end.
Плз, подскажите что не так. В коде есть сайт. Почему-то не получается авторизироватся. :???
tolprog вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Начинающему веб-программисту... Stwl3 Помощь студентам 12 17.08.2012 21:22
Советы начинающему программисту С++ dew-drop Помощь студентам 5 08.03.2012 21:14
Советы начинающему программисту РусланРоккер Помощь студентам 5 01.12.2011 10:11
помогите начинающему программисту alex(21) Паскаль, Turbo Pascal, PascalABC.NET 1 09.06.2009 16:38
помогите начинающему программисту alexs2141 Помощь студентам 3 02.06.2008 10:17