AllesVergessen
Mitglied
Hallo zusammen,
ich versuche gerade einen Request an einen Server zu schicken. Dabei soll der Inhalt als json-Objekt verschlüsselt werden. Da ich mit Beidem in dieser Form noch nie zu tun hatte ist das Ganze nicht einfach für mich - so wie es aussieht kommt im Moment nichts beim Server an. Mein Quellcode dazu sieht so aus:
Die Serveradresse ist auf jeden Fall korrekt, $request_body gebe ich zur Sicherheit noch aus, da passt alles. Ich denke am ehesten mache ich hier einen Fehler in den Anforderungen des Servers, bei denen ich mir nicht zu 100% sicher bin ob ich sie richtig verstanden habe:
Beim letzten Punkt weiß ich, dass das Absenden im Moment auch noch über HTTP geht, daran scheitert es also auch nicht. Erkennt hier jemand vielleicht offensichtliche Fehler? Wie gesagt, ich habe sowas noch nie gemacht, mir etwas zusammengelesen und ein Beispiel aus dem Netz als Vorlage benutzt...
Beste Grüße
Olli
ich versuche gerade einen Request an einen Server zu schicken. Dabei soll der Inhalt als json-Objekt verschlüsselt werden. Da ich mit Beidem in dieser Form noch nie zu tun hatte ist das Ganze nicht einfach für mich - so wie es aussieht kommt im Moment nichts beim Server an. Mein Quellcode dazu sieht so aus:
PHP:
$request_body_send = json_encode($request_body);
$stream = array(
'http' => array(
'method' => 'POST',
'header' => "User-Agent: ".$_SERVER['HTTP_USER_AGENT']."\r\n" .
"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n" .
"Accept-Charset: UTF-8,ISO-8859-1;q=0.7,*;q=0.7\r\n" .
"Cache-Control: no-cache\r\n" .
"Cache-Control: no-cache\r\n" .
"Accept-language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\n" .
"DNT: 1\r\n",
'content' => "request_body_send=".$request_body_send,
)
);
echo file_get_contents('https://my.xxx.com/acp/api/sl/2.1/order/?k=$api_xxx', false, stream_context_create($stream));
Die Serveradresse ist auf jeden Fall korrekt, $request_body gebe ich zur Sicherheit noch aus, da passt alles. Ich denke am ehesten mache ich hier einen Fehler in den Anforderungen des Servers, bei denen ich mir nicht zu 100% sicher bin ob ich sie richtig verstanden habe:
- The request body must be a JSON object.
- The request body must be encoded as either UTF8 or plain ASCII. Any other encodings may cause issues.
- The request content type must be application/json rather than application/x-www-form-urlencoded.
- It is highly recommended that all URLs passed via the API (i.e. external artwork URLs or callback URLs) are specified as using HTTPS rather than HTTP. This recommendation may be enforced in the future due to browsers becoming much stricter in regards to insecure content. Please see Deprecating Non-Secure HTTP for more information.
Beim letzten Punkt weiß ich, dass das Absenden im Moment auch noch über HTTP geht, daran scheitert es also auch nicht. Erkennt hier jemand vielleicht offensichtliche Fehler? Wie gesagt, ich habe sowas noch nie gemacht, mir etwas zusammengelesen und ein Beispiel aus dem Netz als Vorlage benutzt...
Beste Grüße
Olli