加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webservice 创建与配置

发布时间:2020-12-17 01:17:24 所属栏目:安全 来源:网络整理
导读:测试工具: wsCaller.jar ?? ( 此文是给 java 程序调用的 webservice) 提示:要运行 wsCaller.jar? 要选安装 jdk? 如果没有安装 jdk? 则 wsCaller.jar? 会以压缩包的形式显示 1? 写 webservice? 要用到的接口 ? 01 ?php 02 class ? service 03 { 04 ???? fun

测试工具:wsCaller.jar??(此文是给java程序调用的webservice)

提示:要运行wsCaller.jar?要选安装jdk?如果没有安装jdk?wsCaller.jar?会以压缩包的形式显示

1?webservice?要用到的接口

?

01 <?php
02 class?service
03 {
04 ????function?add($a,$b){
05 ????????$c=$a+$b;
06 ????????return?$c;
07 ????}
08 ????function?str($string){
09 ????????return?$string;
10 ????}
11 }
12 ??
13 //require('cls_mysql.php');
14 //$db = new cls_mysql('localhost','root',test_db');??????
15 //$db = new cls_mysql('211.103.156.227:3306','txtx',test_db');???????
16 //'testwsdl.wsd需要在后面采用Zend Studio生成。
17 $server=new?SoapServer('testwsdl.wsdl',array('uri'?=>?'http://webserver.com/','encoding'=>'utf-8','soap_version'?=> SOAP_1_2 ));
18 $server->setClass("service");
19 $server->handle();
20 ?>

2.生成wsdl文件

菜单中

File--àExport---àphp????选中?“wsdl file”?然后下一步?(图1


?

?

File name?wsdl?文件所在的位置

Exported files?下面的文件是你上面刚刚创建的php文件(接口文件)

Classes?下面的service?前面的勾要打上

URL?中填写接口文件的访问地址?(如:http://webserver.com/rpcservice.php


?

?

点击global settings?出现下图(图3

选择RPC – Oriented

然后点击?ok??在点击?“Finish”


?

?

出现下图(图4


?

?

最后一步就是给?每个参数一个合理的类型(下图)

然后保存?

到此?wsdl文件已经生成

?

?

访问路径??http://webserver.com/testwsdl.wsdl??(会出现下面内容)

如果不出现?则要配置apache?使其支持xml

注:?不要用chrome?打开wsdl文件?,可能会显示不正常?(可以用ie firfox


?


?

测试是否可以成功调用

测试工具

wsCaller.jar

注:必需安装JDK?才能运行wsCaller.jar??请不要解压wsCaller.jar

?

如果不能正确返回信息?可直接访问你的php?看看会不会报错

(本例http://webserver.com/rpcservice.php

?

Php?要支持?soap

如果php?版本是5.X??编辑?php.ini

extension=php_soap.dll??(添加?如果存在则去掉注释)

重启一下apache

apache?要注意这个文件?mime.types

?

?

?

函数添加新参数

找到message name=”函数名??中直接复制一下并把参数改一下参数名

WSDL文件


Php接口文件

?

?

1 function?add($a,$b,$e){
2 ????$c=$a+$b+$e;
3 ????return?$c;
4 }

注:$e?就是wsdl文件中的?c?参数??

添加新的函数

WSDL复制代码就行; PHP写出对应的函数?(看一下选中的部分?其实就是复制了一下add?这个函数?并且直接粘贴在它下面就可以)??下面以添加add_bak?函数为例

WSDL

1.复制message?标签


?

?

2.复制?portType?中的标签


?

?

3.复制binding?标签内容


?



?

PHP

?

?

1 function?add_bak($a,$e){
2 ????$c=$a+$b-$e;
3 ????return?$c;
4 }

?

测试结果

add_bak?函数

?


?

add?函数

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读