从php发送xml请求到webservice

时间:2018-05-08 13:28:14

标签: php web-services php-curl

我正在尝试使用curl从PHP向web服务发送xml请求。 我对网络服务知之甚少。

当我运行此代码时,结果总是接缝为“已完成但没有错误。”

xml应该对webservice有效,但我无法得到响应。如果我转储$ data,它就是空的。

我做错了什么?

代码:

$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;

更新: 由于内容类型,我似乎得到了HTTP 415错误。现在content-type是application / soap + xml。但现在我得到HTTP 400 Bad Request。

0 个答案:

没有答案