Delphi сообщение об ошибке «незаконный доступ» - PullRequest
0 голосов
/ 21 мая 2010

Я делаю простое программное обеспечение Delphi, используя модуль IdHttp в Indy.Я хочу получить доступ к этой странице с помощью функции публикации IdHttp, чтобы открыть эту веб-страницу.

Сначала я должен войти в систему (на http://user.buddybuddy.co.kr/Login/Login.asp),, поэтому я вошел в систему, но послеЯ вошел в систему на веб-странице, я вижу другую страницу входа. Но когда я пытаюсь войти (в http://user.buddybuddy.co.kr/usercheck/UserCheckPWExec.asp),, я столкнулся с сообщением об ошибке «Недопустимый доступ».

Если кто-то может мне помочь, ябыл бы признателен!

        begin
      sl.Clear;
      sl.Add('ID=ph896011');
      sl.add('PWD=pk1089');
      sl.add('SECCHK=0');
      IdHTTP1.HandleRedirects := True;
      IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded';
      memo1.Text:=idhttp1.Post('http://user.buddybuddy.co.kr/Login/Login.asp',sl);

      if pos('top.location =',Memo1.Text)> 0 then

       begin
        application.ProcessMessages;
        sleep(1000);
        Memo1.Text:= '';
        sleep(300);
        sl2.Clear;
        sl2.Add('PASSWD=pk1089' );
        Memo2.Text := IdHTTP1.Post('http://user.buddybuddy.co.kr/usercheck/UserCheckPWExec.asp', sl2);


        sleep(300);
        Memo1.Text := '';
        //memo1.Text := IdHTTP1.Get('https://user.buddybuddy.co.kr/Login/Logout.asp');
        //Sleep(1000);
       end;

1 Ответ

1 голос
/ 21 мая 2010

Сервер почти наверняка отслеживает, вошли ли вы в систему, возвращая cookie с ответом на запрос Login.asp. Вам необходимо отправить этот cookie обратно с любыми последующими запросами. Чтобы отслеживать файлы cookie, создайте объект TIdCookieManager и назначьте его свойству CookieManager объекта HTTP. Первый запрос будет хранить куки-файлы ответа, а следующий запрос к тому же объекту HTTP отправит их обратно, указывая серверу, что вы уже вошли в систему.

...