С Новым годом! Форум программистов, компьютерный форум, киберфорум
Delphi: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/22: Рейтинг темы: голосов - 22, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 25.11.2013
Сообщений: 12

Авторизация на сайте POST + SSL

31.01.2014, 23:04. Показов 4407. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Писал я программу, которая парсит сайт 1С и проверяет новые версии их программ. И успешно написал, для меня это было очень сложно, я впервые пишу. Но тут этим... пришло в голову поменять все, и теперь сайт открывается по SSL (https). Код следующий:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TForm1.authClick(Sender: TObject);
var
  post:TStringList;
  result:string;
begin
  status.Caption:=('Идет авторизация, подождите...');
  try
    post:=TStringList.Create;
    idhttp.HandleRedirects:=True;
      try
        post.Add('user=login');
        post.Add('password=pass');
        post.Add('enteringButton=Войти >>>>');
        result:=idhttp.Post('http://users.v8.1c.ru/', post);
      if Pos('logout.jsp', result) > 0 then
        status.Caption:=('Авторизация прошла успешно...')
      else
        status.Caption:=('Авторизация провалена, проверьте данные...')
      except
        post.Free;
      end;
    memo.Lines.Add(idhttp.Get('http://users.v8.1c.ru/actual.jsp'));
  except
    status.Caption:=('Нет доступа к сети, проверьте подключение...');
  end;
  if status.Caption = 'Авторизация прошла успешно...' then updates.Enabled:= True;
end;
То есть, я через Indy отсылкой post-данных, получал обычную страницу через http. А теперь тут https, а Indy с ним подружить у меня так и не вышло.
Теперь я пробую Synapse (используя их новую страницу авторизации на https), с обычным http все понятно, но как быть с https? Я так понял, нужно указать все headers? Как это сделать? Вот, что я пишу:
Delphi
1
2
3
4
5
6
7
8
9
var
HTTP:THTTPSend;
post:TStringStream;
begin
HTTP:=THTTPSend.Create;
post:=TStringStream.Create;
post.WriteString('code=login');
post.WriteString('password=pass');
HTTP.Document.LoadFromStream(post);
...и тут пытаюсь headers добавить, но возникает ошибка "Not enough actual parameters" на строке "post:=TStringStream.Create;". Видимо, нужно добавить headers? Что именно указывать и как? В uses все указано, две библиотеки нужные добавил. Извините, если не понятно написал
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.01.2014, 23:04
Ответы с готовыми решениями:

Авторизация на сайте, requests, post
Всем привет! Буду благодарен за помощь. Прочитал очень много примеров и решений, но ничего не помогло. Есть злой сайт -...

Авторизация на сайте POST+Cookie
Тема для тех, кто знаком с DevelStudio 3.0 Есть такой код: $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,...

Авторизация на сайте. POST - запрос
Миллион тем было, миллион тем будет. Ниже процедура и 2 вызова. для LDS - работает, для Life - получаю в response - 403 Forbidden. ...

7
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33198 / 21494 / 8233
Регистрация: 22.10.2011
Сообщений: 36,888
Записей в блоге: 12
01.02.2014, 02:09
Цитата Сообщение от Devsas20 Посмотреть сообщение
А теперь тут https, а Indy с ним подружить у меня так и не вышло.
Очень интересно, как пробовал? TIdSSLIOHandlerSocketOpenSSL + libeay32.dll/ssleay32.dll и не работает? Это фантастика...
0
0 / 0 / 0
Регистрация: 25.11.2013
Сообщений: 12
01.02.2014, 11:54  [ТС]
UI, мне не удается найти необходимые версии этих библиотек. Даже если и найду и у меня запустится, то нет гарантии, что запустится на другом компьютере. При этом, оно то запускается, то нет - такие глюки мне не нужны. Я пробовал несколько версий библиотек, везде ошибка, что программа не может загрузить их.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33198 / 21494 / 8233
Регистрация: 22.10.2011
Сообщений: 36,888
Записей в блоге: 12
01.02.2014, 13:24
Нет там никаких глюков (десятки проектов крутятся на огромном парке машин и не вякают). Но если тебе проще перейти на использование другой библиотеки только из-за того, что не можешь скачать с оф. сайта правильную версию DLL - то удачи. Следующим твоим вопросом будет "а на каком еще языке программирования (как вариант - с использованием каких еще библиотек) такое можно сделать? Ибо и Синапс работает через раз", вот увидишь...
0
0 / 0 / 0
Регистрация: 25.11.2013
Сообщений: 12
01.02.2014, 19:34  [ТС]
UI, я уже все сделал сам, можете не умничать.
Цитата Сообщение от UI Посмотреть сообщение
Нет там никаких глюков
Цитата Сообщение от UI Посмотреть сообщение
Ибо и Синапс работает через раз
Почему "и"? Вы же сказали, что там нет глюков. Вам лишь бы повыеживаться, а не оказать реальную помощь.
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
02.02.2014, 19:56
Цитата Сообщение от UI Посмотреть сообщение
Нет там никаких глюков (десятки проектов крутятся на огромном парке машин и не вякают).
Вобщето где то в встречал упоминание о глюке, Indy подхватывала не все SSL библиотеки и нужно было качать их от сюда http://indy.fulgan.com/SSL/ .

Но это вроде "было давно и неправда", лично я с таким не сталкивался на новых версиях сред.

Добавлено через 2 минуты
Цитата Сообщение от Devsas20 Посмотреть сообщение
C++
1
post.Add('enteringButton=Войти >>>>');
Вероятно стоило эскейпить кириллицу.
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33198 / 21494 / 8233
Регистрация: 22.10.2011
Сообщений: 36,888
Записей в блоге: 12
02.02.2014, 20:13
Цитата Сообщение от Avazart Посмотреть сообщение
нужно было качать их от сюда
Так я отсюда и беру... Для любых версий. И с новыми прекрасно работает, 2009-XE4, новомодную XE5 не держим, сырая она еще... Да и не нужно оно мне особо, это все-таки не основной рабочий инструмент, так, для души больше...
0
02.02.2014, 20:14

Не по теме:

Цитата Сообщение от UI Посмотреть сообщение
Так я отсюда и беру...
А... я думал ты про оф.сайт SSL

Кстати заметил интересное изменение в XE3 в Indy, компонент TIdSSLIOHandlerSocketOpenSSL созается сам ("внутри IdHTTP") если запрос по https.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.02.2014, 20:14
Помогаю со студенческими работами здесь

Программная авторизация на сайте, POST-запрос
Ребят, я этим никогда не интересовался, поэтому простите, если вопрос глупый. Не могу программно войти на сайт...

Авторизация с использованием post запроса на сайте
Моя первая попытка авторизации на сайте. import requests def autoriz(): session = requests.Session() url=...

POST запрос, авторизация на сайте Intertelecom
Пытаю написать программу, которая проверяет остаток средств на лицевом счете, чтобы пополнять интернет вовремя. Пользуясь многочисленными...

Авторизация на сайте посредством Post запроса
Авторизация на сайте по средствам Post запроса На сайте есть форма входа: <form action="site.com/login.php"...

Авторизация на сайте через post запрос
Всем доброго времени суток. Я новичок в vb net (учусь кодить) недавно мне пришлось работать с post get запросами. Так вот, есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru