1. 程式人生 > >PHP使用SOAP協議傳播數據(不同於RESTFUL)

PHP使用SOAP協議傳播數據(不同於RESTFUL)

PHP使用SOAP協議傳播數據

  • 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();
  • 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();
    }
  • PHP使用SOAP協議傳播數據(不同於RESTFUL)