Я пытаюсь отправить xml-запрос на веб-сервис из PHP, используя curl.
Я не знаю много о веб-сервисе.
Когда я запускаю этот код, результат всегда выглядит как «Завершено без ошибок».
XML должен быть действителен для веб-службы, но я не могу получить ответ. Если я дам данные $, то они пустые.
Что я делаю не так?
Код:
$request = build_xml();
$length = strlen($request);
$url = "https://sonwin-test.forsyningsit.dk/XMLBasisWS.svc?wsdl";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10000);
curl_setopt($curl, CURLOPT_TIMEOUT, 10000);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, $request);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Contant-Type: application/xml', 'Content-Length: ' .$length));
$data = curl_exec($curl);
if ($data === false) {
$err = 'Curl error: ' . curl_error($curl);
curl_close($curl);
print $err;
} else {
curl_close($curl);
print 'Completed with no errors.';
}
return $data;
UPDATE:
Похоже, я получаю ошибку HTTP 415 из-за типа контента. Теперь тип содержимого это application / soap + xml. Но теперь я получаю HTTP 400 Bad Request.