Ошибка TidHTTP.Post 10054 при подключении к серверу Worldpay - PullRequest
0 голосов
/ 21 сентября 2019

Я пытаюсь подключиться к серверу Worldpay для совершения торговых транзакций и получаю ошибку 10054 при падении компонента и ошибку 500 при создании TidHTTP во время выполнения.

Я сделал много другихинтеграция с кредитными картами, но это первое, что доставляет мне неприятности.

var
PostString, url, ReturnStr: String;
JsonToSend: TStringStream;
myGuid1: TGUID;
// IdHTTP1:TIdHTTP;
// IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL;
begin
 CreateGUID(myGuid1);
 PostString := '{"laneId": "10", "decsription": "USER1", "TerminalId": "19117P", "activationCode": "' + DeviceID + '"}';
 Try
// IdHTTP1 := TIdHTTP.Create;
// IdSSLIOHandlerSocketOpenSSL1:= TIdSSLIOHandlerSocketOpenSSL.Create;

 JsonToSend := TStringStream.Create(PostString);
 url:='https://triposcert.worldpay.com/cloudapi/V1/lanes';
 IdHTTP1.Request.UserAgent := 'Mozilla/3.0 (compatible; Indy Library)';
 IdHTTP1.Request.ContentType := 'application/json';
 IdHTTP1.Request.BasicAuthentication := True;
 IdHttp1.Request.CustomHeaders.Clear;
 IdHttp1.Request.CustomHeaders.AddValue('tp-application-id', '*****');
 IdHttp1.Request.CustomHeaders.AddValue('tp-application-name', '******');
 IdHttp1.Request.CustomHeaders.AddValue('tp-application-version', '****');
 IdHttp1.Request.CustomHeaders.AddValue('tp-application-authorization', '****');
 IdHttp1.Request.CustomHeaders.AddValue('tp-express-acceptor-id', '*****');
 IdHttp1.Request.CustomHeaders.AddValue('tp-express-account-id', '*****');
 IdHttp1.Request.CustomHeaders.AddValue('tp-express-account-token', '*****');
 IdHttp1.Request.CustomHeaders.AddValue('tp-request-id','''' +  GUIDToString(myGuid1) + '''');

//IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvTLSv1_2;
//IdHttp1.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
 try

 ReturnStr := IdHTTP1.Post(url, JsonToSend);
 except
       on E:Exception do
          begin
               Memo1.Text := E.Classname + ': ' + E.Message;

          end;
 end;

 Finally
 IdHTTP1.Disconnect;
 JsonToSend.Free;
 IdSSLIOHandlerSocketOpenSSL1.Free;
 IdHTTP1.Free;
 End;

Спасибо за любую помощь.Ким

1 Ответ

0 голосов
/ 24 сентября 2019

GUID был в предложении.Задача решена.Спасибо.

...