web-dev-qa-db-ja.com

ブラウザのURLだけでどのようなWebサービスを呼び出すことができますか?

ブラウザーのURLだけで呼び出せるようにWebサービスを記述できますか?

たとえばWebサービスがGetStockQuoteと呼ばれる場合、ブラウザの次のURLから呼び出すことができます。

http://myserver.com/WebServices/GetStockQuote?sym=MSFT

同様に、さらにパラメータがある場合は、URLを介して渡すことができます。

これとは異なり- http://www.webservicex.net/stockquote.asmx -ここでは、URLを介してparamを渡すことができないようです。 paramを入力して、invokeをクリックすることは、プログラムか人間のどちらかを必要とするようです。

それとも常にクライアントプログラムが必要ですか? wsdlから、ブラウザから呼び出すことができるかどうかを判断する方法はありますか?.

上記の基準を満たすWebサービスをプログラムするにはどうすればよいですか?

2
user93353

もちろん、ブラウザから直接Webサービスを呼び出すこともできます!これはRESTful Webサービスと呼ばれます。 (例が使用するPOSTではなく)GETメソッドを使用するRESTful APIは、URLを入力することでナビゲートできます。次に例を示します。

http://rxnav.nlm.nih.gov/REST/rxcui?name=lipitor

National Institutes of HealthのこのAPIは、その名前(ここでは、「Lipitor」)に基づいて薬物の処方識別子を取得します。

このように動作するWebサービスをプログラミングするには、HTTP GET要求への応答を記述する必要があります。ただし、それに対応したい場合は、任意の言語で記述してください(詳細を提供する場合は、私は満足します)助けるために)。 GETリクエストのもう1つは、データを取得することだけが想定されていることです。副作用はありません。これらの種類のリクエストについては、POSTやDELETEなどを使用する必要があります。これらはブラウザに単純に入力することはできません。

4
mgw854

Wsdlがある場合は、すべてのHTTP応答を標準のSOAPエンベロープに抽象化するC#ラッパーにコーディングしていると思われます。誰もが同じ種類を話せば、うまくいくと思いますof SOAPサービスを組み込んだ緊急のクロスプラットフォームマッシュアップを本当に望まないものすべて。

上記の推定C#を使用していると仮定すると、従来のASP ASP.NETのルートを利用して、XMLの本文を返すページを作成するか、 JSON:確立されたスキーマを使用するか、人間が使いやすいXSLを提供するためのオプションを含めることのボーナスポイント。

(ASP.NETを使用していない場合でも、PHP、Node、JSPなどでほぼ同じように機能します。実際に見れば、同じことを行う純粋なC#ライブラリを見つけることができます。)

0
DougM