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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> idHTTP+SSL - авторизация, сохранение сессии и ряд 
:(
    Опции темы
oswxp
Дата 11.4.2013, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Как после авторизации (с SSL) отправить второй post запрос?
Возможно проблема с сессией? Куки?
В общем авторизовываюсь, получаю респонз,который нужен, а со 2го запроса ничего не происходит. Если я через блокноту указываю эти ссылки с параметрами:
1. авторизоваться - выполнил.
2. Послать запрос на выполнение некоторого действия (звонок) , возвращает 201-OK, но если из блокнота - звонит, а из программы POST запросом ничего ен происходит.
Ребята, что я делаю не так?

пример:

Код

procedure TForm1.FormCreate(Sender: TObject);
var
  Response: TStringStream;
  I: integer;
  str: string;
begin
  try
    http.AllowCookies := true;
    //http.HTTPOptions := [hoInProcessAuth,hoForceEncodeParams];
    http.Response.KeepAlive := true;
    http.Request.AcceptLanguage := 'ru-RU';
    http.Request.Accept := '*/*';
    http.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; MRSPUTNIK 2, 4, 0, 463; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.1; .NET4.0C; .NET4.0E; BRI/2)';
    http.Request.Connection := 'Keep-Alive';
    http.Request.Referer := ('https://server:8881/webdialer/Webdialer');
    HTTPData := TStringList.Create;
    Response := TStringStream.Create();
    HTTPData.Add('destination=[color=blue]number[/color]');
    HTTPData.Add('uid=admin');
    HTTPData.Add('pwd=pass');
    HTTPData.Add('loc=ru_RU');
    HTTPData.Add('cmd=doAuth');
    //HTTPData.Add('cmd=doMakeCall');
    http.Post('https://server:8881/webdialer/Webdialer',HTTPData,Response);
    Response.SaveToFile('1.html');                                                                                  <--- ЗДЕСЬ Я ПОЛУЧАЮ СОДЕРЖИМОЕ ЗАПРОСА POST / idHTTP + SSL.[I][color=red][/color][/I]
    Label3.Caption := http.ResponseText;}
    //i:=pos('jsessionid=',Response.DataString);
    HTTPData.Clear;
    HTTPData.Add('destination=[color=blue]number[/color]');
    HTTPData.Add('cmd=doMakeCall');
    HTTPData.Add('noConfDialog=true');
    //HTTPData.Add('jsessionid='+copy(Response.DataString,i+11,32));
    http.Post('https://server:8881/webdialer/Webdialer',HTTPData,Response);             [I][color=red][/color]<--- По идеи после этого запроса должен последовать звонок, уже после авторизации, в блокноте так и происходит, выполнил в браузере 1й запрос с параметром авторизации и потом вызов, после вызова запрос на завершение звонка[/I]

    Label3.Caption := Label3.Caption + (http.ResponseText);
    Memo1.Text := Response.DataString;                                                                          
  finally
    begin
      Response.Free;

    end;
  end;
end;
 

где NUMBER, некоторый номер, не суть важна (работает, если руками вбивать в адресную строку в браузере).
PM MAIL   Вверх
oswxp
Дата 14.4.2013, 11:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Неужели никто не может помочь, направить?
PM MAIL   Вверх
Akella
  Дата 15.4.2013, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


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

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



А ты проверь отладчиком свойство CoockieManager. Может оно пустое?
А также проверь, что в куках.
А также проверь с помощью дополнения httpfox (для Firefox), что передаёт и получает браузер.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

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

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

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

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

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


 




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


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

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