0

私はWebサービスが初めてで、Webサービスを作成する方法を探していましたが、現時点では何とか作成できたと思いますが、結果は返されません。私はnusoapとCodeigniterを使用しています。

WebService サーバーは、というアプリケーションにあります。WebServiceTester

Bills_WS以下は、サーバーとして機能するコントローラーのコードです。

class Bills_WS extends CI_Controller
{
    function __construct() 
    {
        parent:: __construct ();         
    }

    public function index()
    {
       $this->load->library('Nusoap_lib');

       $namespace = "http://localhost:8080/webservicetester/bills_ws.php?wsdl";

       $server = new nusoap_server;
       $server->configureWSDL('WebServiceTester');
       $server->wsdl->schemaTargetNamespace = $namespace;

       $server->register('hello');

       $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
       $server->service($HTTP_RAW_POST_DATA);
    }
    function hello()
    {
        return "greetings from server";
    }
}

それを呼び出すには、トランザクション コントローラーで使用されている ws_client ライブラリの下にある ussccsv1 という別のアプリケーション (同じマシン) で呼び出しています。

class Ws_client
{
    private $CI = null;
    function __construct() 
    {
        $this->CI =& get_instance();
    }

    public function transaction_send_ws($param)
    {
        $this->CI->load->library('nuSoap_lib');

        $url = 'http://localhost/webservicetester.php/bills_ws?wsdl';  

        $client = new nusoap_client($url);
        $response = $client->call('hello');

        if($client->fault)
        {
            echo "FAULT:".$client->faultcode;
            echo "string: ".$client->faultstring;
        }
        else
        {
            $r = $response;
            count($r);
echo "count".count($r);

        }
    }
}

私もnusoap_lib使用しています:

class Nusoap_lib
{
    function nusoap_lib()
    {
        include(APPPATH.'libraries/nusoap/nusoap'.EXT); 
    }
}

私の質問は次のとおりです。 1. で Web サービスを呼び出すにはどうすればよいbills_wsですか? は$url正しいですか?これまでのところ、404 エラー HTTP が見つかりません。2. 障害はws_clientまたはにありbills_wsますか? 3.しかし、私がそれをエコーするときcount($r) 、それは私に与えます。ws_client = 1

このチュートリアルに従おうとしていますが、完全には理解していないようです: - http://www.phpeveryday.com/articles/PHP-Web-Services-Fetching-Data-From-Database-P105.html - http ://ellislab.com/forums/viewthread/59710/

前もって感謝します。

4

1 に答える 1