Ошибка неверного запроса при публикации xml с использованием curl - PullRequest
0 голосов
/ 02 сентября 2011

Я пытаюсь решить эту проблему, получаю ошибку неверного запроса при публикации в XML с использованием curl.Мой код:

$post_string = '<XML DATA>';

$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER,
            array('Content-Type: text/xml; charset=utf-8', 'SOAPAction: ""'));
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($ch);

var_dump($data);

Любые идеи о том, что не так?

Ниже моя строка XML

   <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"   xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<SubmitLead xmlns="">
<xmlLead>
<Lead>
<General>
<dealer type="CMH">273</dealer>
<source  ref="stockid">3256</source>
<enquiry></enquiry>
<subtype></subtype>
<comment></comment>
</General>
<Prospect>
<title>n.a</title>
<name>j</name>
<surname>m</surname>
<email>jm@test.com</email>
<home>home</home>
<work>n.a</work>
<mobile>4545</mobile>
<idnumber>n.a</idnumber>
 <comment>4545</comment>
 <area>n.a</area>
</Prospect>
<Item>
 <id>25DLC61717</id>
 <makeAsked></makeAsked>
 <modelAsked></modelAsked>
 <yearAsked></yearAsked>
 <mileageAsked></mileageAsked>
 <priceAsked></priceAsked>
 <colourAsked></colourAsked/>
 <registration></registration>
 <vin></vin>
 <purchaseDate/></purchaseDate>
 </Item>
 </Lead>
 </xmlLead>
 </SubmitLead>
 </soap:Body>
 </soap:Envelope>

Ответы [ 2 ]

0 голосов
/ 05 сентября 2011

в моем коде ruby ​​я сделал так

 resp = http.post("/soap/service", xml, { 'Content-Type' => 'application/soap+xml; charset=utf-8', 'SOAPAction' => "/soap/service/Request" })

, и он работает

, поэтому разница только в заголовках

также, возможно, вам следует использовать безопасное соединение, если URLесть схема https?

0 голосов
/ 04 сентября 2011

вероятно, неправильный запрос, потому что XML не является допустимым XML?

...