Ich schaue auf eine Anfrage in SoapUI, die Header-Informationen zu einem bestimmten Endpunkt sendet, aber ich habe es schwer, es in ColdFusion neu zu erstellen.Convert SoapUI Anfrage in CFHTTP
Im Folgenden finden Sie, was die RAW-Anforderung wie in SoapUI aussieht:
>> "GET https://test-01.mywebsite.com/data_api//1.0/service/requests HTTP/1.1[\r][\n]"
>> "Accept-Encoding: gzip,deflate[\r][\n]"
>> "Authorization: Bearer A1BEC30F7E0273059E775A6A2645E273[\r][\n]"
>> "Host: test-01.mywebsite.com[\r][\n]"
>> "Connection: Keep-Alive[\r][\n]"
>> "User-Agent: Apache-HttpClient/4.1.1 (java 1.5)[\r][\n]"
>> "[\r][\n]"
<< "HTTP/1.1 200 OK[\r][\n]"
<< "Pragma: No-cache[\r][\n]"
<< "Cache-Control: no-cache[\r][\n]"
<< "Expires: Wed, 31 Dec 1969 16:00:00 PST[\r][\n]"
<< "Content-Type: application/json;charset=UTF-8[\r][\n]"
<< "Content-Length: 6796[\r][\n]"
<< "Date: Fri, 13 May 2016 15:40:08 GMT[\r][\n]"
<< "Server: hws[\r][\n]"
<< "Set-Cookie: X-HR-ClientSessionId=2_10.85.12.121_1463154008475;Secure; path=/; HttpOnly[\r][\n]"
<< "Content-Encoding: deflate[\r][\n]”
Ich bin nicht sicher, ob ich nicht den Authorization-Header richtig Formatierung bin oder was aber jede Hilfe wäre toll.
BEARBEITEN Ich habe eine RAW-HTML-Ausgabe vom Client, die ich oben aktualisiert habe. Ich versuche immer noch, diesen Header in ColdFusion neu zu erstellen.
Meine neue Frage (n): Machen die Zeichen "Neue Zeile" einen Unterschied in den Header-Werten? Sollte ich auch einen Parameter für den Inhaltstyp hinzufügen?
Ich versuche tat folgendes:
<cfset NL="Bearer BD4DF031B24180C9338F0D9F060556A7" & Chr(10) & Chr(13)/>
<cfhttp method="get" url="https://test-01.mywebsite.com/data_api//1.0/service/requests" result="orderList">
<cfhttpparam type="HEADER" name="Authorization" value="#NL#">
<cfhttpparam type="Header" name="Accept-Encoding" value="gzip,deflate">
</cfhttp>
<cfset CurrentOrders = deserializeJSON(orderList.filecontent)>
<cfdump var="#CurrentOrders#">
Wenn ich alles Dump vom cfhttp Anruf erhalte ich:
struct
Charset UTF-8
ErrorDetail [empty string]
Filecontent Connection Failure
Header HTTP/1.1 200 OK Connection: close Expires: Wed, 31 Dec 1969 16:00:00 PST Date: Tue, 17 May 2016 19:23:36 GMT Server: hws Pragma: No-cache Cache-Control: no-cache Set-Cookie: X-HR-ClientSessionId=3_12.161.115.226_1463513016026;Secure; path=/; HttpOnly Content-Type: application/json;charset=UTF-8
Mimetype application/json
Responseheader
struct
Cache-Control no-cache
Connection close
Content-Type application/json;charset=UTF-8
Date Tue, 17 May 2016 19:23:36 GMT
Expires Wed, 31 Dec 1969 16:00:00 PST
Explanation OK
Http_Version HTTP/1.1
Pragma No-cache
Server hws
Set-Cookie X-HR-ClientSessionId=3_12.161.115.226_1463513016026;Secure; path=/; HttpOnly
Status_Code 200
Statuscode 200 OK
Text NO
Ich erhalte einen Statuscode 200 OK, aber noch immer Ein Verbindungsfehler.
nicht sicher, ob ich der genauen Frage über die Tatsache, dass etwas folgen funktioniert nicht ;-) 1) Beginne zuerst mit dem Dumping der kompletten Antwort von cfhttp. Was ist eine vollständige Fehlermeldung? 2) Zur Klarstellung sagen Sie, dass die "rohe Anfrage" von SoapUI * erfolgreich ist, aber cfhttp nicht? 3) Wie sieht die cfhttp "RAW Anfrage" aus und was ist zwischen den beiden? – Leigh
Ich werde meine Frage mit den oben genannten Informationen aktualisieren. Danke. \ – Denoteone
Ich habe die komplette Ausgabe von orderList aus der cfhttp Anfrage hinzugefügt. Es fällt mir schwer, die rohen Header an meinem Ende anzuzeigen, denn wenn ich meine Anfrage an eine lokale Datei sende, wird sie vom Autorisierungsheader abgeworfen, weil ich meinen lokalen Benutzernamen und mein Passwort hinzufügen muss, um auf die Testseite zugreifen zu können. Ja, die SoapUI ist erfolgreich und der Raw-HTML-Code ist oben. Die CFHTTP-Anforderung ist nicht erfolgreich. Wenn es etwas Spezifisches gibt, das ich ausführen und ausgeben kann, lass es mich wissen. – Denoteone