php使用soap协议传播数据(不同于restful)
更新:HHH   时间:2023-1-7


  1. 安装:
    yum  -y  install  php-soap
  2. server.php:
    <?php
    if ($_SERVER['PHP_AUTH_USER']!='user' || $_SERVER['PHP_AUTH_PW']!='pass') {  
    header('WWW-Authenticate: Basic realm="ACCESS DENIED!!!"');  
    header('HTTP/1.0 401 Unauthorized');  
    exit("ACCESS DENIED!!!");  
    }
    class Server{
    public function say(){
        return 'Hi';
    }
    }
    $server = new SoapServer(
                            null,
                            array(
                                'uri' => 'http://test.org/'
                                )
                        );
    $server->setClass('Server');
    $server->handle();
  3. client.php:
    <?php
    $client = new SoapClient(
                            null,
                            array(
                                    'location' => 'http://localhost/server.php',
                                    'uri' => 'http://test.org/',
                                    'trace' => true,
                                    'login' => 'user',
                                    'password' => 'pass',
                                )
                        );
    // $head = new SoapHeader('http://test.org/', 'user', 'pass', false, SOAP_ACTOR_NEXT);
    // $client->__setSoapHeaders(array($head));
    try {
    echo $client->say();
    } catch (Exception $e) {
    echo $e->getMessage();
    }
  4. 测试:
返回web开发教程...