我在Windows上使用XAMPP,并尝试与PHP soap扩展SoapClient一起使用。我正在尝试使用以下代码加载HTTPS站点中托管的WSDL文件
<?php
$myClient=new SoapClient("https://smi.sp.f-secure.com/smi/5.1/services/EchoService?wsdl");
?>
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
致命错误:未捕获的SoapFault异常:[WSDL] SOAP错误:解析WSDL:无法从' https://smi.sp.f-secure.com/smi/5.1/services/EchoService?wsdl ' 加载:无法在C:\ xampp \ htdocs \ dev \ w3schools \ soapClient \ index.php:2中加载外部实体“ https://smi.sp.f-secure.com/smi/5.1/services/EchoService?wsdl ”
#0 C:\ xampp \ htdocs \ dev \ w3schools \ soapClient \ index.php(2):SoapClient-> SoapClient(' https://smi.sp ....')
#1 {main}抛出C:第2行上的\ xampp \ htdocs \ dev \ w3schools \ soapClient \ index.php
现在,我在请求期间进行了网络捕获,发现HTTPS通信在SSL级别上无法正常工作。Wireshark在服务器密钥交换上显示一个数据包,我的工作站通过以下方式响应:
TLSv1记录层:警报(级别:致命,描述:证书未知)
使用同一台计算机上的nuSOAP客户端或soapUI实用程序,我可以正常连接到该服务。因此,我猜没有证书问题。
因此,肯定是带有SOAP扩展和SSL通信的东西。有人可以帮忙吗?提供提示寻找什么?