zoukankan      html  css  js  c++  java
  • 浅学soap--------4

    引入nusoap
    
    Service.php    //运行该文件,在网页中wsdl点击,可浏览生成的wsdl代码;网页提供注册的方法
    <?php
    require_once ("nusoap/nusoap.php");  
    $server = new nusoap_server();  
    // 避免乱码  
    $server->soap_defencoding = 'UTF-8';  
    $server->decode_utf8 = false;  
    $server->xml_encoding = 'UTF-8';  
    $server->configureWSDL ('names'); // 打开 wsdl 支持,参数随意  
    /* 
    注册需要被客户端访问的程序 
    类型对应值: bool->"xsd:boolean"    string->"xsd:string" 
    int->"xsd:int"     float->"xsd:float" 
    */  
    $server->register ( 'name', // 方法名  
    array ("request" => "xsd:string" ), // 参数,默认为 "xsd:string" ,键值随意,多传入同意string
    array ("response" => "xsd:string" ) ); // 返回值,默认为 "xsd:string"  ,键值随意 
    //isset  检测变量是否设置  
    $HTTP_RAW_POST_DATA = isset ( $HTTP_RAW_POST_DATA ) ? $HTTP_RAW_POST_DATA : '';  
    //service  处理客户端输入的数据  
    $server->service ( $HTTP_RAW_POST_DATA );  
    /** 
     * 供调用的方法 
     * @param $name 
     */  
    function name($name,$age) {  
        return $name+$age;  
    }
    ?>
    
    
    Clint.php
    <?php    
    require_once ("nusoap/nusoap.php");  
     
    /*通过 WSDL 调用 WebService 
    参数 1 WSDL 文件的地址 (问号后的wsdl不能为大写) 
    参数 2  指定是否使用 WSDL */
    //$client = new soapclient('http://localhost/nusoapService.php?wsdl',true); 
      
    $client = new nusoap_client('http://localhost/test/web_service/Service.php'); 
    $client->soap_defencoding = 'UTF-8';  
    $client->decode_utf8 = false;  
    $client->xml_encoding = 'UTF-8';  
    //参数转为数组形式传递  
    $paras = array ('10','21');  //或$paras = array ('name'=>'张三','age'=>'21');   键值随意   输出21
    //目标方法没有参数时,可省略后面的参数  
    $result = $client->call ('name',$paras);  
    //检查错误,获取返回值  
    if (! $err = $client->getError ()) {  
        echo " 返回结果: ", $result;  //31
    } else {  
        echo " 调用出错: ", $err;  
    }
    ?>
  • 相关阅读:
    WM11破解版
    安装系统
    linux配置问题
    PAT:1022. Digital Library (30) (部分正确,错最后两个)
    PAT:1023. Have Fun with Numbers (20) AC
    PAT:1081. Rational Sum (20) AC(类似math.h中的sqrt(1.0*n),algorithm的abs()用于取绝对值)
    PAT:1013. Battle Over Cities (25) AC
    conv2的计算过程
    UFLDL Tutorial
    视频深度学习 Deep Learning
  • 原文地址:https://www.cnblogs.com/Kqingniao/p/6840038.html
Copyright © 2011-2022 走看看