Bonjour,
Je dois utiliser un web service pour la première fois, et même si j'ai des indications assez précises je rame pour les traduire en PHP...
Voici mes consignes :
- appeler l'URL http://toto
- utiliser un header avec des attributs Accept et Content-Type
- envoyer un body formaté en XML
- envoyer le tout en POST
Voici mon dernier test :
Comme résultat, j'obtiens bien sûr raté.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 $url = 'http://toto'; $data ='<attrs> <attr name="userName" type="string"/>Ali Baba</attr> <attr name="password" type="string"/>Sésame, ouvre-toi</attr> <attr name="auth" type="string" possibilities="secEnterprise,secLDAP,secWinAD,secSAPR3">secEnterprise</attr> </attrs> '; $options = array( 'http' => array( 'header' => "Content-type: application/xml\r\nAccept: application/xml", 'method' => 'POST', 'content' => urlencode($data) ) ); $context = stream_context_create($options); $result = file_get_contents($url, false, $context); if ($result === FALSE) { echo "raté" ; } var_dump($result);
L'un des trucs que je ne comprends pas : en POST, je suis censé envoyer des paires clef/valeur et pas un code XML... Est-ce que je dois l'associer à une clef ?
Je fais sans doute un paquet d'erreurs de débutant...
Partager