powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
5 сообщений из 5, страница 1 из 1
TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
    #40022266
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
When a movie is over, it's a black

Вот это все работало по http, но мне надо перейти на https. Итак,

Код: pascal
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.
28.
29.
30.
31.
32.
33.
34.
35.
var
  APIURL: string = 'https://localhost:8080/';
//…

constructor TServerRequest.Create(const AServerURL: string);
var
  Http: TIdCustomHTTP;
  SSLIOHandler: TIdSSLIOHandlerSocketOpenSSL;
begin
  FServerURL := AServerURL;
  //...
  FRESTClient := TRESTClient.Create(nil);
  FRESTRequest := TRESTRequest.Create(nil);
  FRESTRequest.Client := FRESTClient;

  //... добавлено нижеследующее 
  IdOpenSSLSetLibPath('E:\SSL\'); // path exists
  Http := (FRESTRequest.Client.HTTPClient.Peer.GetObject) as TIdCustomHTTP;
  SSLIOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(Http);
  with SSLIOHandler do
  begin
    SSLOptions.Method := sslvSSLv3;
    SSLOptions.SSLVersions := [sslvSSLv3];
  end;
  Http.IOHandler := SSLIOHandler;
  //...

end;

///….. в методе TServerRequest вызываю
    FRESTClient.BaseURL := FServerURL + 'auth/openid-connect/token';
    FRESTRequest.AddAuthParameter('Authorization', 'Bearer ' + TResourceBearer(Resource).Token, pkHTTPHEADER, [poDoNotEncode]);
///….. 
    FRESTRequest.Method := rmPOST;
    FRESTRequest.Execute;



при вызове FRESTRequest.Execute получаю исключение:

---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EIdOSSLUnderlyingCryptoError with message 'Error connecting with SSL.
error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number'.
---------------------------
Break Continue Help
---------------------------

Что я делаю не так?
...
Рейтинг: 0 / 0
TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
    #40022306
Фотография X-Cite
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TRestClient может работать без indy

Код: pascal
1.
2.
3.
4.
5.
6.
7.
  var Client := TRESTClient.Create(FServerURL);
  var Request := TRESTRequest.Create(nil);
  Request.Client := Client;

  Client.SecureProtocols := [THTTPSecureProtocol.SSL3];
  Request.Method := TRESTRequestMethod.rmPOST;
  Request.Execute();
...
Рейтинг: 0 / 0
TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
    #40022392
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все дело было в порте, https-листенер на другом порте висел, такие дела
...
Рейтинг: 0 / 0
TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
    #40022393
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X-Cite
TRestClient может работать без indy

Код: pascal
1.
2.
3.
4.
5.
6.
7.
  var Client := TRESTClient.Create(FServerURL);
  var Request := TRESTRequest.Create(nil);
  Request.Client := Client;

  Client.SecureProtocols := [THTTPSecureProtocol.SSL3];
  Request.Method := TRESTRequestMethod.rmPOST;
  Request.Execute();

Там внутрях все равно Инди
...
Рейтинг: 0 / 0
TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
    #40022405
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Квейд
Там внутрях все равно Инди

WinHttp
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / TRESTClient и сервер по https - SSL3_GET_RECORD:wrong version number call
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]