2

WADL ファイルがある REST サービスがあります。このファイルを参照して、そこからメソッドにアクセスしたい。WADL ファイルの内容は次のとおりです。

<resource path="/loadPerson">
    <method id="loadPerson" name="GET">
        <request>
            <param xmlns:xs="http://www.w3.org/2001/XMLSchema" name="personId" style="query" type="xs:int"/>
        </request>
        <response>
            <ns2:representation xmlns:ns2="http://wadl.dev.java.net/2009/02" xmlns="" element="person" mediaType="application/xml"/>
            <ns2:representation xmlns:ns2="http://wadl.dev.java.net/2009/02" xmlns="" element="person" mediaType="application/json"/>
        </response>
    </method>
</resource>

実際、これまでWADLファイルで遊んだことがないので、それに近づく方法がわかりません。私は何をすべきですか?

4

1 に答える 1

3

は、RESTful な方法で対話する URL (表示しない外部要素<resource>の属性として指定されたベース URL に関して) を識別します。には GET の属性があります。つまり、その特定の操作を使用するには、リソース URL で GET を実行します。内部には があるため、クエリ パラメータを GET URL に追加することがわかっています。この場合、(または他の整数) になります。は、XML または JSON として回答を取得できることを示しています。HTTP コンテンツ ネゴシエーションを使用してどちらを判断する必要があります。base<resources><method>name<request><param>personId=123<response>

先頭に;を付けて<resource>URL を指定しているという点で、WADL には小さなバグがあります。/正しい URL をアセンブルしようとするため、ツールで問題が発生する可能性が非常に高くなりますが、(RESTful Web アプリケーションがどのように実装される傾向があるかを知ることで) URL がどうなるかを判断することはできます。

外側<resources>がベース URL はhttp://example.org/foobar(中間<resource>要素はありません。WADL はそれを許可します) であると言っていると仮定すると、WADL は、http://example.org/foobar/loadPerson?personId=123XML を優先するように構成された HTTP クライアントで GET を実行すると、<person>要素が次のように返されることを示しています。 HTTP 応答の本文 (またはエラー。たとえば、一致するものpersonIdがない場合や、検索する権限がない場合)。

于 2012-06-07T08:31:43.287 に答える