На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
! Соблюдайте общие правила форума
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.
Указывайте точные версии Delphi и используемых сетевых библиотек.

Не приветствуется поднятие старых тем. Если ваш вопрос перекликается со старой темой, то для вопроса лучше создать новую тему, а старую указать в первом сообщении с описанием взаимосвязи.

Внимание:
попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки бан.
Мат в разделе - бан на три месяца...

Полезные ссылки:
user posted image MSDN Library user posted image FAQ раздела user posted image Поиск по разделу user posted image Как правильно задавать вопросы


Выразить свое отношение к модераторам раздела можно здесь: user posted image Krid, user posted image Rouse_

Модераторы: Krid, Rouse_
  
> Авторизация на сайте, отправка запросов
    Есть сайт chcgreen.net
    login aaaaa111
    pass 123123123

    Это то в чём разобрался...
    При авторизации сначала сайт через GET даёт уникальный индентификатор, который используется в последующих запросов.
    Сама авторизация идет через POST. Затем индентификатор меняется, и некоторые запросы через GET некоторые через POST

    Подскажите, как ПРАВИЛЬНО авторизироватся, чтобы в дальнейшем отправлять запросы, и получать ответы.

    ExpandedWrap disabled
      function parse_otvet(otvet, nach, kon:string):string;
      var
      i, k:integer;
      begin
        i:=0;
        k:=0;
        i:=Pos(nach,otvet);
        otvet:=Copy (otvet,i+Length(nach),Length(otvet)-Length(nach));
        i:=Pos(kon,otvet);
        if i=0 then
        begin
          i:=Length(otvet);
          K:=0;
        end else k:=Length(kon);
        otvet:=Copy (otvet,1,i-1);
        result:=otvet;
      end;
       
      procedure TForm1.Button1Click(Sender: TObject);
      var
        otv:string;
        kod:string;
        zap:tstringlist;
        zap1:string;
        adr:string;
        log, pass:string;
      begin
         log:='aaaaa111';
         pass:='123123123';
         adr:='http://chcgreen.net';
         otv:=ht.Get(adr);
         kod:=parse_otvet(otv, '<input type="hidden" name="_csrf" value="', '" />');
         memo1.Lines.Clear;
         memo1.Text:=otv;
         showmessage(kod);
         //zap1:='username='+log +'&'+'password='+pass+'&'+ '_csrf='+kod;
         zap:=tstringlist.Create;;
         zap.Add('username = '+log);
         zap.Add('password = '+pass);
         zap.Add('_csrf = '+kod);
         //zap.add('_remember_me=on');
         adr:='http://chcgreen.net/security_check/';
         //ht.Request.ContentType:='application/x-www-form-urlencoded';
         otv:=ht.post(adr, zap);
         zap.Free;
         memo1.Lines.Clear;
         memo1.Text:=otv;
      end;

    Этот код, почему то не работает...
    ht это IDHTTP
    1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script Execution time: 0,0603 ]   [ 15 queries used ]   [ Generated: 19.07.19, 23:10 GMT ]