मेरे पास एक ऐसा एप्लिकेशन है जिसमें वेब सेवा रीस्टफुल एपीआई है। जब मैं ब्राउज़र में HTTP GET अनुरोध करता हूं तो मुझे XML प्रतिक्रियाएं वापस मिलती हैं।PHP कर्ल HTTP एक्सएमएल प्रारूप
जब मैं PHP का उपयोग कर एक ही अनुरोध करता हूं तो मुझे सही जानकारी मिलती है लेकिन यह एक्सएमएल में स्वरूपित नहीं है और इसलिए मैं इसे सरल एक्सएमएल में पास नहीं कर सकता।
मेरा कोड यहां है।
<?php
//Deifne user credentials to use with requests
$user = "user";
$passwd = "user";
//Define header array for cURL requestes
$header = array('Contect-Type:application/xml', 'Accept:application/xml');
//Define base URL
$url = 'http://192.168.0.100:8080/root/restful/';
//Define http request nouns
$ls = $url . "landscapes";
//Initialise cURL object
$ch = curl_init();
//Set cURL options
curl_setopt_array($ch, array(
CURLOPT_HTTPHEADER => $header, //Set http header options
CURLOPT_URL => $ls, //URL sent as part of the request
CURLOPT_HTTPAUTH => CURLAUTH_BASIC, //Set Authentication to BASIC
CURLOPT_USERPWD => $user . ":" . $passwd, //Set username and password options
CURLOPT_HTTPGET => TRUE //Set cURL to GET method
));
//Define variable to hold the returned data from the cURL request
$data = curl_exec($ch);
//Close cURL connection
curl_close($ch);
//Print results
print_r($data);
?>
कोई भी विचार या सुझाव वास्तव में सहायक होंगे।
एस
संपादित करें:
0x100000rhel-mlsptrue9.2.3.0101
यह प्रतिक्रिया है, तो मैं WizTools बाकी ग्राहक या एक ब्राउज़र का उपयोग है:
तो यह प्रतिक्रिया मैं PHP कोड से मिलता है।
<?xml version="1.0" encoding="UTF-16"?>
<landscape-response total-landscapes="1" xmlns="http://www.url.com/root/restful/schema/response">
<landscape>
<id>0x100000</id>
<name>rhel-mlsp</name>
<isPrimary>true</isPrimary>
<version>9.2.3.010</version>
</landscape>
</landscape-response>
जैसा कि आप देख सकते हैं कि जानकारी वहां है लेकिन PHP वास्तव में इसे उपयोगी तरीके से प्रस्तुत नहीं कर रहा है।
हम्म यह सुनिश्चित नहीं है कि क्या होने वाला था लेकिन आपके कोड का उपयोग करके मुझे अभी एक घातक अपवाद मिला। – Simon
मुझे कारण मिला कि यह सही तरीके से जानकारी प्रदर्शित नहीं कर रहा है और ऐसा इसलिए है क्योंकि एक्सएमएल में टैग अज्ञात हैं। मुझे लगता है कि मुझे एक स्कीम फाइल शामिल करने की ज़रूरत है ताकि यह पता चल सके कि इसके साथ क्या करना है। – Simon