php 5.3 soap,PHP 5.3.8 的 SoapClient 无法工作

业余时间帮朋友写了个Web Service,结果一直告诉我无法使用。我写了个C#的客户端测试了一下,工作很正常嘛。朋友那边都是做PHP开发的。难道PHP对Web Service支持得不好吗?于是我也现查资料,写了个PHP访问Web Service的Demo。这几乎是我这辈子写过的唯一一个PHP程序。

用PHP 自带的 SoapClient ,初始化时给的参数就是WSDL文件。

结果初始化这一步就出错了,总是遇到这样的问题:

SOAP-ERROR: Parsing Schema: can't import schema from ...

上网一搜,这个问题很普遍,似乎不是因为我对PHP不熟悉造成的。

在stackoverflow.com上对这个问题有这么一个回答:

There are some bugs known in some versions of PHP, perhaps you're running an older PHP version?

事实上我用的已经是最新版的PHP了。刚从php.net上下载下来的PHP 5.3.8 Release。

我曾做过的尝试:

1. 原先我的Web Service用的是wsHttpBinding,我后来改成了basicHttpBinding。无效。

2. 有人说要修改WSDL里面的soap-enc。无论是把它置为空,还是改成 http:/http://www.w3.org/2001/12/soap-encoding,都无效。

如果有谁知道怎么解决,请不吝赐教,谢谢。

目前我是这样解决这个问题的:不用标准的SOAP了,改用RESTful API。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值