PHP-调用.NETSOAP服务,结果对象是空字符串?
我试图通过PHP与.NETWeb服务交互。我可以连接到服务,我可以调用getFunctions,它会返回所有服务函数的列表。我使用soapUI测试了web服务,当我使用soapUI时,所有请求都能完美地工作 然而,每当我使用PHP调用其中一个服务函数时,都会得到一个看似空的响应 代码: var转储的输出如下所示:PHP-调用.NETSOAP服务,结果对象是空字符串?,php,.net,soap,wsdl,Php,.net,Soap,Wsdl,我试图通过PHP与.NETWeb服务交互。我可以连接到服务,我可以调用getFunctions,它会返回所有服务函数的列表。我使用soapUI测试了web服务,当我使用soapUI时,所有请求都能完美地工作 然而,每当我使用PHP调用其中一个服务函数时,都会得到一个看似空的响应 代码: var转储的输出如下所示: object(stdClass)#35 (1) { ["GetStuffResult"]=> string(835807) "" } string(835807) ""
object(stdClass)#35 (1) {
["GetStuffResult"]=>
string(835807) ""
}
string(835807) ""
我的第一个问题是。。。“空”字符串的长度如何为835807个字符?我的第二个也是更明显的问题是数据在哪里,为什么我不能访问它?soapUI显示响应是XML格式的,但是我发现这个响应字符串完全没有任何用处。请帮忙 如果
$location
包含XML,则输出可能是正确的,但不会“显示”在浏览器中(除非发送了text/plain
之类的内容类型标题),因为浏览器不显示(它认为是什么)标记/元素。您需要将$location
中的“XML字符串”编码为foo
。尝试:
echo htmlentities(print_r($locations, true));
…或:
header("Content-Type: text/plain");
var_dump($locations);
…或者只是在浏览器中“查看源代码”。这正是我需要的。。。真不敢相信我所要做的就是查看源代码!
header("Content-Type: text/plain");
var_dump($locations);