首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在PHP中通过soapclient发送xml

在PHP中通过soapclient发送xml
EN

Stack Overflow用户
提问于 2015-11-23 20:59:50
回答 1查看 1.5K关注 0票数 1

我对使用Web服务和理解XML非常陌生。如果你觉得我应该读一些教程或文档,如果你能提供一些链接,我会很高兴的。

我试图通过一个web服务来执行一个简单的功能,

在提供的文件中我有以下信息..。

Web服务输入参数:

id,数据类型= xs:string,lenght: 10

密码,数据类型= xs:string,lenght: 25

,数据类型= xs:string,长度: 20

orderxml,数据类型= xs:string,长度: 2^16

为最后一个参数提供了示例xml,当我尝试运行该函数时,会得到以下错误。

致命错误:未命名的SoapFault异常: a:InternalServiceFault不能为空。参数名称:

代码语言:javascript
运行
复制
 $client = new SoapClient('http://www.example.com/service?wsdl');
 $xml = '<samplexml> </samplexml>';
 $response = $client->Import(
 array(
    'Id' => '1234',
    'password' => '123456',
    'group' => 'test1',
    'orderxml' => $xml

));

当我尝试

代码语言:javascript
运行
复制
 $response = $client->Import('test', 'test');

我得到了以下..。

我尝试了第二种方法,也许我需要发送原始XML?

致命错误:未公开的SoapFault异常:a:反序列化--格式化程序在试图反序列化消息时抛出一个异常:反序列化操作“导入”的请求消息正文中的错误。预期名称空间'http://schemas.xmlsoap.org/soap/envelope/‘中的End元素'Body’。从命名空间中找到元素'param1‘。第2行,第162号阵地。在……里面

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-23 21:08:17

禤浩焯-

从你给出的片段中,没有什么可以决定你想要做什么。如果不知道WSDL的确切性质,就很难说出发生了什么--导入一个有效的请求,它是否以正确的格式出现,等等。

我建议将WSDL加载到SOAPUI中,并验证XML格式是否正确。在用PHP编写SOAP请求之前,这是一个非常有用的工具。

http://www.soapui.org/

然后,我建议为SoapClient类引用PHP手册,以正确格式化代码。

http://php.net/manual/en/class.soapclient.php

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33880588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档