Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 8 октября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Слушай, дружище, зачем так мучиться с этим языком С++, ты ведь не Билл Гейтс. Возьми тот же Python и программируй, он кроссплатформенный, под Windows тоже работает. Я сам давно заметил: то что на Си пишешь в страницу кода, на питоне решается в одну-две строки. При том, питон намного проще, я его сам недавно изучил по видеокурсу вот этому. Кстати, автор отлично там объясняет. Буквально день-два и уже будешь писать на нём, чего не скажешь про сложный С++.

Как сделать SSL запрос.

Данный пример показывает, как установить HTTP соединение через Secure Socket Layer (SSL) или Private Communications Technology (PCT) используя WinInet API-вызовы. Защищённый HTTP (HTTPS://) располагаетня на 443 порту.

Следующий пример может быть использован для установления HTTPS соединения:

   ...
    hOpen = InternetOpen (...);
    Connect = InternetConnect (
                 hOpen,                      // обработчик InternetOpen
                 "MyHttpServer",             // Имя сервера
       INTERNET_DEFAULT_HTTPS_PORT,// По умолчанию HTTPS порт - 443
                 "",                         // Имя пользователя
                 "",                         // Пароль пользователя
                 INTERNET_SERVICE_HTTP,      // Сервис
       0,                          // Флаги
       0                           // Контекст
                    );
    hReq = HttpOpenRequest (
                 hConnect,                // Обработчик InternetConnect
       "GET",                      // Метод
       "",                         // Имя объекта
       HTTP_VERSION,               // Версия
       "",                         // Ссылка (Referer)
                 NULL,             // Дополнительные заголовки
       INTERNET_FLAG_SECURE,       // Флаги
       0                           // Контекст
                 );
    ... 

Всё отличие при использовании HTTPS вместо HTTP заключается в следующем:

  • InternetConnect использует INTERNET_DEFAULT_HTTPS_PORT вместо INTERNET_INVALID_PORT_NUMBER или INTERNET_DEFAULT_HTTP_PORT

  • HttpOpenRequest использует опцию INTERNET_FLAG_SECURE в добавление ко всем остальным опциям.

Чтобы обойти ошибки сертификации, можно использовать следующие две опции в HttpOpenRequest либо в InternetOpenUrl:

  • INTERNET_FLAG_IGNORE_CERT_CN_INVALID - Игнорирует ошибки, которые могут возникать при несовпадении имени хоста сервера и имени хоста, указанном в запросе.

  • INTERNET_FLAG_IGNORE_CERT_DATE_INVALID - Игнорирует ошибки, связанные с истекшим сроком действия сертификата сервера.

Более полная информация по этим флагам расписана в документации Internet Client SDK.



<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS