Zend Framework の紹介

 Learning Zend Framework

appendix

 Zend Framework リファレンス


  • 第36章 Zend_Gdata
  • 第37章 Zend_Http
  • 第38章 Zend_InfoCard
  • 第39章 Zend_Json
  • 第40章 Zend_Layout
  • 第41章 Zend_Ldap
  • 第42章 Zend_Loader
  • 第43章 Zend_Locale
  • 第44章 Zend_Log
  • 第45章 Zend_Mail
  • 第46章 Zend_Markup
  • 第47章 Zend_Measure
  • 第48章 Zend_Memory
  • 第49章 Zend_Mime
  • 第50章 Zend_Navigation
  • 第51章 Zend_Oauth
  • 第52章 Zend_OpenId
  • 第53章 Zend_Paginator
  • 第54章 Zend_Pdf
  • 第55章 Zend_ProgressBar
  • 第56章 Zend_Queue
  • 第57章 Zend_Reflection
  • 第58章 Zend_Registry
  • 第59章 Zend_Rest

  • 第60章 Zend_Search_Lucene
  • 第61章 Zend_Serializer
  • 第62章 Zend_Server
  • 第63章 Zend_Service
  • 第64章 Zend_Session
  • 第65章 Zend_Soap
  • 第66章 Zend_Tag
  • 第67章 Zend_Test
  • 第68章 Zend_Text
  • 第69章 Zend_TimeSync
  • 第70章 Zend_Tool
  • 第71章 Zend_Tool_Framework
  • 第72章 Zend_Tool_Project
  • 第73章 Zend_Translate
  • 第74章 Zend_Uri
  • 第75章 Zend_Validate
  • 第76章 Zend_Version
  • 第77章 Zend_View
  • 第78章 Zend_Wildfire
  • 第79章 Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Translation 70.6% Update 2010-11-28 - Revision 23415

    59.3. Zend_Rest_Server

    59.3.1. 導入

    Zend_Rest_Server は、完全に機能する REST サーバを作成するためのものです。

    59.3.2. REST サーバの使用法

    例 59.6. 基本的な Zend_Rest_Server の使用法 - クラス

    $server = new Zend_Rest_Server();
    $server->setClass('My_Service_Class');
    $server->handle();

    例 59.7. 基本的な Zend_Rest_Server の使用法 - 関数

    /**
     * Say Hello
     *
     * @param string $who
     * @param string $when
     * @return string
     */
    function sayHello($who$when)
    {
        return 
    "Hello $who, Good $when";
    }

    $server = new Zend_Rest_Server();
    $server->addFunction('sayHello');
    $server->handle();

    59.3.3. Zend_Rest_Server サービスのコール

    Zend_Rest_Server サービスをコールするには、 GET/POST 時の引数 method にそのメソッド名を指定しなければなりません。 その後に、任意の数の引数を続けることができます。これは、引数の名前 (たとえば "who") を指定するか、あるいは引数の位置を表す数値 (たとえば "arg1") を指定します。

    [注意] 数値インデックス

    数値で指定する引数のインデックスは、1 から始まります。

    上の例の sayHello をコールするには、次のようにします。

    ?method=sayHello&who=Davey&when=Day

    あるいは、このようにもできます。

    ?method=sayHello&arg1=Davey&arg2=Day

    59.3.4. 独自のステータスの送信

    値を返す際に独自のステータスを返すには、 キー status を含む配列を返します。

    例 59.8. 独自のステータスを返す

    /**
     * Say Hello
     *
     * @param string $who
     * @param string $when
     * @return array
     */
    function sayHello($who$when)
    {
        return array(
    'msg' => "An Error Occurred"'status' => false);
    }

    $server = new Zend_Rest_Server();
    $server->addFunction('sayHello');
    $server->handle();

    59.3.5. 独自の XML レスポンスを返す

    独自の XML を返したい場合は、 DOMDocumentDOMElement あるいは SimpleXMLElement オブジェクトを返します。

    例 59.9. 独自の XML を返す

    /**
     * Say Hello
     *
     * @param string $who
     * @param string $when
     * @return SimpleXMLElement
     */
    function sayHello($who$when)
    {
        
    $xml ='<?xml version="1.0" encoding="ISO-8859-1"?>
    <mysite>
        <value>Hey $who! Hope you\'re having a good $when</value>
        <code>200</code>
    </mysite>'
    ;

        
    $xml simplexml_load_string($xml);
        return 
    $xml;
    }

    $server = new Zend_Rest_Server();
    $server->addFunction('sayHello');

    $server->handle();

    サービスからのレスポンスは、変更なしにクライアントに返されます。

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...