nusoap simple server

后端 未结 3 1502
攒了一身酷
攒了一身酷 2021-01-04 10:45

Hi i am using this code for nusoap server but when i call the server in web browser it shows message \"This service does not provide a Web description\" Here is the code

相关标签:
3条回答
  • 2021-01-04 11:08

    You can also use nusoap_client

    <?php
    // Pull in the NuSOAP code
    require_once('lib/nusoap.php');
    // Create the client instance
    $client = new nusoap_client('your server url'); // using nosoap_client
    // Call the SOAP method
    $result = $client->call('hello', array('name' => 'Pingu'));
    // Display the result
    print_r($result)
    ?>
    
    0 讨论(0)
  • 2021-01-04 11:12

    Please change your code to,

    <?php
    //call library
    require_once('nusoap.php');
    $URL       = "www.test.com";
    $namespace = $URL . '?wsdl';
    //using soap_server to create server object
    $server    = new soap_server;
    $server->configureWSDL('hellotesting', $namespace);
    
    //register a function that works on server
    $server->register('hello');
    
    // create the function
    function hello($name)
    {
        if (!$name) {
            return new soap_fault('Client', '', 'Put your name!');
        }
        $result = "Hello, " . $name;
        return $result;
    }
    // create HTTP listener
    $server->service($HTTP_RAW_POST_DATA);
    exit();
    ?>
    

    You didnt Define namespace..

    Please see simple example here :-

    http://patelmilap.wordpress.com/2011/09/01/soap-simple-object-access-protocol/

    0 讨论(0)
  • 2021-01-04 11:17

    The web browser is not calling the Web service - you could create a PHP client :

    // Pull in the NuSOAP code
    require_once('lib/nusoap.php');
    // Create the client instance
    $client = new soapclient('your server url');
    // Call the SOAP method
    $result = $client->call('hello', array('name' => 'StackOverFlow'));
    // Display the result
    print_r($result);
    

    This should display Hello, StackOverFlow

    Update

    To create a WSDL you need to add the following :

    $server->configureWSDL(<webservicename>, <namespace>);
    
    0 讨论(0)
提交回复
热议问题