Webサービス:本物



Webサービスには、任意の言語で構築された任意のアプリケーションからアクセスできます。異なるアプリケーション間の通信の問題に対処します。

誰かを助けることを考えて、それをする方法を見つけられなかったことがありますか?はい、私はソフトウェア開発者がこれらすべてを行う時間がないことを知っています。実際、私たちの生涯の一部は、あるアプリケーションまたは他のアプリケーションのコーディングに費やされています。開発者として、仲間の開発者にできることは何でもあるので、これらすべてが私に考えさせられました。





どんな言語でコーディングしている開発者でも使用できるコードを書いてみませんか?それは素晴らしいことではないでしょうか?
はい!そして、何を推測しますか?解決策は–「Webサービス」

W3Cの定義によるWebサービスは、「ネットワークを介した相互運用可能なマシン間相互作用をサポートするように設計されたソフトウェアシステム」です。



ある言語で開発されたWebサービスは、他のどの言語でも使用できます。最も優れているのは、あるアプリケーションから別のアプリケーションへの接続を支援することです。

2つのシステムが相互に通信する場合、サービスを要求するソフトウェアシステムはサービスリクエスターと呼ばれ、要求を処理してサービスを提供するソフトウェアシステムはサービスプロバイダーと呼ばれます。

さて、あなたがコミュニケーションがどのように起こるかについて考えているなら、それを手に入れましょう。



異なるシステム間で通信を行う方法を定義する特定のルールがあります。これらのルールには、あるシステムが別のシステムからデータを要求する方法、データ要求に必要なパラメーター、生成されるデータの構造、および特定のルールが破られたときに表示されるエラーメッセージが含まれます。これらのルールは、拡張子が.wsdlのWSDL(Webサービス記述言語)と呼ばれるファイルで定義されています。

Webサービスが作成されると、SOAPプロトコル()を使用してサービスをUDDI(Universal Distribution Discovery and Interoperability)に公開または登録し、他のユーザーがサービスを利用できるようにするWebサービスを記述するWSDLファイルが生成されます。
UDDIは、どのタイプのデータについてどのソフトウェアシステムに接続する必要があるかを定義します。

サービスリクエスターはUDDIに連絡し、必要なデータを提供するプロバイダーを確認します。次に、SOAPプロトコルを使用してサービスプロバイダーに連絡します。サービスプロバイダーは、WSDLを参照して要求を検証し、SOAPプロトコルを使用して構造化データをXMLで送り返します。このXMLは、XSD(XMLスキーマ定義-XMLのルールまたは要素を定義するドキュメント)を使用して再度検証されます。

Divya

Ruby onRailsのWebサイトチュートリアル

それがどのように機能するかを理解したので、Webサービスを開発しましょう。

.NETでのWebサービス開発を管理する主な3つの側面があります。

1.Webサービスの作成
2.プロキシの作成
3.作成されたWebサービスを消費します。

.netでWebサービスを作成するには:

1.プロジェクトを右クリック> [追加]> [新しいアイテム]。

1.Web> Webサービス
2.Webサービスの名前を入力します
3. [追加]をクリックします。

Webサービスファイルは.asmxで終わることに注意してください
これでデフォルトのWebサービスが作成され、次のように表示されます。

using System using System.Collections.Generic using System.Linq using System.Web using System.Web.Services namespace WebApplication5 {/// /// WebService2の概要説明/// [WebService(Namespace = 'http:// tempuri。 org / ')] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // ASP.NET AJAXを使用してスクリプトからこのWebサービスを呼び出せるようにするには、次の行のコメントを解除します。 // [System.Web.Script.Services.ScriptService] public class WebService2:System.Web.Services.WebService {[WebMethod] public string HelloWorld(){return'Hello World '}}}

上記のコードスニペットでは、Webサービスクラスは、Webサービス属性[WebService]で囲まれたSystem.Web.Services.WebServiceを継承しています。ここで、名前空間を指定し、Webサービスの簡単な説明を提供できます。

WebMethod属性[WebMethod]は、Webサービスの一部としてメソッドを宣言するために使用されます。 Webサービスで公開する各メソッドの宣言の前に配置する必要があります。また、すべてのメソッドをパブリックとして宣言する必要があります。

Webサービスメソッドを作成するには、WebService1クラスのWebメソッド属性を使用してコードをパブリックメソッドに追加します。例えば:

[WebMethod] public int ConvertToFarenheit(int celsius){int f = 0 f =(celsius * 9/5)+ 32 return f}

その後、Webサービスを実行すると、次のページが表示されます。

これには、Webサービスで公開するメソッドと、WSDLファイルであるサービス記述へのリンクが含まれます。
Webサービスをテストするには、メソッドをクリックして、以下のページを表示します。パラメータ値を渡し、[呼び出し]をクリックします。


次のようなWebサービスの出力が得られます。

それでは、アプリケーションで作成したWebサービスを利用する方法を見てみましょう。
1.プロジェクトで、参照を右クリック>サービス参照を追加

以下のスクリーンショットに示されているように:
1.サービス記述子またはWSDLファイルのURLをアドレスに指定します。そして、[移動]をクリックします。
作成したWebサービスを検索します。
2. [OK]をクリックします

ご覧のとおり、ソリューションエクスプローラーでは、[参照]の下にサービス参照ディレクトリが作成されます。これには、Webサービスの利用に関連するすべてのファイルを含むフォルダーが含まれています。

ここで、ServiceReference1は私たちが作成したWebサービスです。
ServiceReference1> Reference.svcmap> reference.csには、Webサービスで定義されたメソッドを呼び出すことができるプロキシクラス(WebService1SoapClient)が作成されています。

アプリケーションで使用するには:
1.プロキシクラスのオブジェクトを作成します。
2.プロキシクラスのオブジェクトを介してWebサービスで使用可能なメソッドを呼び出します。

gotoコマンドc ++
System.Collections.Genericを使用するSystem.Linqを使用するSystem.Webを使用するSystem.Web.UIを使用するSystem.Web.UI.WebControlsを使用するServiceConsumeApp1.ServiceReference1を使用するServiceConsumeApp1.ServiceReference1を使用するUI.Page {protected void btnConvertRates_Click(object sender、EventArgs e){WebService1SoapClient fn1 = new WebService1SoapClient()TextBox2.Text = fn1.ConvertToFarenheit(Convert.ToInt32(TextBox1.Text))。ToString()}}}

アプリケーションを実行すると、結果を表示するために適切なコントロールをWebフォームに配置した後、出力は次のように表示されます。

つまり、これが.NETでWebサービスを作成して利用する方法です。

上記の手順を使用して、.NETで多くのWebサービスを作成できます。これらのWebサービスには、任意の言語で構築された任意のアプリケーションからアクセスできます。したがって、Webサービスは、さまざまなアプリケーション間の通信の問題に対処し、実際の取引を証明します。

質問がありますか?コメント欄にご記入ください。折り返しご連絡いたします。

関連記事: