Avatar billede mrkaynex Nybegynder
10. februar 2012 - 17:55 Der er 1 kommentar og
1 løsning

HTTP Post XML og modtag svar

Hejsa,

Jeg har tidligere haft et spørgsmål om dette, man kom aldrig videre.

Min problemstilling er, at jeg har et system hvor jeg gerne skulle sende noget xml til en anden side, via HTTP POST. Herfra skal jeg gerne modtage et svar, enten med informationer, eller om kaldet var OK.

Herudover vil modsatte system også til tider sende callback til mig, hvor de forventer et svar. Altså, de sender informationer, og jeg skal sende en statuskode OK (et stump xml-kode).

Men hvordan gøres dette? Scriptet nedenfor fandt jeg, og det burde eftersigende kunne sende en stump XML via HTTP POST, men hvordan behandler/udskriver jeg de informationer jeg får tilbage?
Avatar billede mrkaynex Nybegynder
10. februar 2012 - 17:55 #1
Glemte scriptet :)

<?php

$url = "API URL";

$apirequest = '<?xml version="1.0" encoding="utf-8" ?>
<eblRequest username="USERNAME" apiKey="KEY">
  <getEvents>
    <eventId>2593</eventId>
  </getEvents>
</eblRequest>';


$header  = "POST HTTP/1.0 \r\n";
$header .= "Content-type: text/xml \r\n";
$header .= "Content-length: ".strlen($post_string)." \r\n";
$header .= "Content-transfer-encoding: text \r\n";
$header .= "Connection: close \r\n\r\n";
$header .= $post_string;

$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 4);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $header);

$data = curl_exec($ch);

if(curl_errno($ch))
    print curl_error($ch);
else
    curl_close($ch);

?>
Avatar billede mrkaynex Nybegynder
04. marts 2014 - 22:36 #2
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester