ThinkPHP框架内使用soap服务端开放web service接口

后端 ngxz 5年前 (2019-11-28) 3602次浏览 已收录 扫描二维码

工作中用到作为服务端开放web service接口,之前只写过http接口的我在网上找了很多文章,但他们都不是在ThinkPHP框架下

的,而且也无法自定义生成的wsdl文件的存放目录,所以稍作修改,总结一下,希望能起到抛砖引玉的效果,于是写了这篇文章。

1.首先soap的简介和开启php内置的soap模块,见文章http://blog.yuanrb.com/essay/191

2.开放soap接口有两种方式:

有xml格式wsdl文件的和没有wsdl文件的,这里介绍有wsdl文件的方式。

3.生成wsdl文件:

感谢网友们提供的SoapDiscovery.class.php类,但是这个类不能自定义wsdl文件存放的路径,所以稍作修改,地址在文章末尾。用法如下图介绍。

配置wsdl文件存放的地址:

ThinkPHP框架内使用soap服务端开放web service接口

用这个方法来生成wsdl文件:

ThinkPHP框架内使用soap服务端开放web service接口

在初始化的时候调用上边的方法即可:

ThinkPHP框架内使用soap服务端开放web service接口

4.访问接口地址

tp里边默认的方法里实例化SoapServer,并作配置,如下图。

ThinkPHP框架内使用soap服务端开放web service接口

配置之后,在wsdl文件存放的路径能看到 类名.wsdl的文件,打开文件找到下图的位置:

ThinkPHP框架内使用soap服务端开放web service接口

浏览器打开有如下图的描述文件则成功。

ThinkPHP框架内使用soap服务端开放web service接口

5.访问接口测试,见文章http://blog.yuanrb.com/essay/191

6.相关文件下载(如不能打开请复制到浏览器url打开)

SoapDiscovery.class.php类地址:https://pan.baidu.com/s/1Goou4n7LzRDlKdXan_0saQ

包含截图代码的类文件地址:https://pan.baidu.com/s/1aWD0XU2KF_OWua1zhH9GLQ

示例中wsdl文件地址:https://pan.baidu.com/s/1GFIepy9rrbahz7OVYgBfjg

更详细的视频说明地址:https://www.bilibili.com/video/BV1a7411s77X


版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:ThinkPHP框架内使用soap服务端开放web service接口
喜欢 (38)