ホームページ >バックエンド開発 >PHPチュートリアル >Web サービス アーキテクチャに Zend_Rest_Server を使用する

Web サービス アーキテクチャに Zend_Rest_Server を使用する

WBOY
WBOYオリジナル
2016-07-25 09:11:061102ブラウズ
  1. $base_url = 'http://bbs.it-home.org/';

  2. $client = new Zend_Rest_Client($base_url);
  3. // グローバル変数を設定します

  4. $headers = array();

  5. $client->headers($headers);

  6. //リモート呼び出し、sayHello インターフェイスを呼び出し、2 つの文字列パラメーターを渡します

  7. $response = $client->sayHello('Hello', 'world!')->get();

  8. $this->_request->getParam('debug')) {

  9. echo "
    ";</li>
    <li> print_r(json_decode($response, 1));</li>
    <li> echo "
    "; else {
  10. echo $response;
  11. }
コードをコピー
サーバー側:

  1. // リクエストヘッダー情報を取得します

  2. $headers = $this->_request->getParam('headers');
  3. Zend_Registry::set('headers ', $headers);
  4. $server = new Zend_Rest_Server();
  5. $server->setClass('Lijiabeibei_Blog');
  6. $server->handle();

  7. / /インターフェース処理クラス: (Lijiabeibei_Blog)

  8. class Lijiabeibei_Blog {
  9. protected $retval = array();

  10. function __construct() {

  11. }

  12. **

  13. * テストインターフェイス
  14. * @param string $a
  15. * @param string $b
  16. */
  17. functionsayHello($a, $b) {
  18. if (!$this->retval['success']) {
  19. $this->retval['debug']= print_r(
  20. Zend_Registry::get('headers'), 1
  21. );
  22. return json_encode($this->retval);
  23. }
  24. $this->retval['debug'] = $a .' ;

  25. return json_encode($this->retval);

  26. }
  27. }

複数のサービスクラスを設定したい場合は、あなたはこれを行うことができます : $server = 新しい Ylili_Rest_Server(); $server->setClass('Lijiabeibei_Blog'); $server->setClass('Lijiabeibei_Shop); 複数のサーバー クラスのメソッド名が競合しないように注意してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。