Derzeit wird versucht, eine Socket-Verbindung zu einem Host herzustellen, für den die Authentifizierung mit dem Benutzernamen: password @ domain syntax eingerichtet wurde. Die folgende curl Anfrage funktioniert gut, wenn über die Befehlszeile:Progress 4gl Secure Socket-Authentifizierung
/opt/pware/bin/curl -s -v -S -k -X POST -d @/test/worldpay.xml https://username:[email protected]/jsp/merchant/xml/paymentService.jsp
Das Problem liegt bei dem Versuch, die gleiche worldpay.xml Nutzlast-Datei mit Fortschritt Secure Socket zu schreiben. Meine Buchse verbindet mit dem folgenden:
DEFINE VARIABLE vhSocket AS HANDLE NO-UNDO.
CREATE SOCKET vhSocket.
vhSocket:CONNECT('-H test.worldpay.com -S 443 -ssl -nohostverify') NO-ERROR.
IF vhSocket:CONNECTED() EQ FALSE THEN
DO:
Message "COULD NOT CONNECT".
vhSocket:DISCONNECT().
DELETE OBJECT vhSocket NO-ERROR.
RETURN.
END.
ELSE
Message "CONNECTED!".
ich meine Kopf setze sich wie folgt, wenn die Socket-Verbindung geöffnet wird:
ASSIGN
vRequest = 'POST ' +
username + ":" + password + "@" + "/jsp/merchant/xml/paymentService.jsp" +
' HTTPS/1.1' + chr(13) + chr(10) +
'Connect: close' + chr(13) + chr(10) +
'Host: ' + "secure-test.worldpay.com" + chr(13) + chr(10) +
'Content-Length: ' + string(LENGTH(postdata,"raw")) + chr(13) + chr(10) +
'Content-Type: text/xml' + chr(13) + chr(10) +
chr(13) + chr(10) +
postData +
chr(13) + chr(10).
set-byte-order(vData) = BIG-ENDIAN.
set-size(vData) = LENGTH(vRequest,"raw").
put-string(vData,1,LENGTH(vRequest,"raw")) = vRequest.
vReturnCode = vhSocket:WRITE(vData, 1, LENGTH(vRequest,"raw")).
Jede Hilfe zu herauszufinden, wie der Header strukturiert sein sollte oder wie man Führen Sie eine grundlegende Authentifizierung über Secure Sockets in Progress durch. Danke Leute!
Dank Mike Ich gebe dies jetzt ein go! Bleiben Sie dran ... –
Ihr Vorschlag scheint das Sendeproblem behoben zu haben. Danke nochmal Mike du bist der Mann! –