Webサービス

7745 ワード

転載:http://www.w3school.com.cn/webservices/index.asp
Web Servicesは、あなたのアプリケーションをWebアプリケーションにすることができます。
Web ServicesはWebで公開、検索、使用を行う。
あなたが備えるべき基礎知識
勉強を続ける前に、以下の知識について基本的な理解が必要です。
・ HTML
・ XML
まずこれらの項目を勉強したいなら、私達のトップページでこれらの教程を訪問してください。
Webサービスとは?
・ WebServicesはアプリケーションのコンポーネントです。
・ WebServicesはオープンプロトコルで通信します。
・ WebServicesは独立しており、自己記述も可能です。
・ WebServicesはUDDIを使って発見できます。
・ WebServicesは他のアプリケーションで使用できます。
・ XMLはWeb Servicesの基礎です。
どうやって仕事をしますか
ベースのWeb ServicesプラットフォームはXML+HTTPです。
HTTPプロトコルは最も一般的なインターネットプロトコルである。
XMLは異なるプラットフォームとプログラミング言語の間で使用できる言語を提供しています。
Web servicesプラットフォームの要素:
・ SOAP(簡易オブジェクトアクセスプロトコル)
・ UDDI(共通の説明、発見および統合)
・ WSDL(Web services記述言語)
私たちはこの教程の後の章でこれらのテーマを説明します。
Web servicesの未来
早く期待しないでください。
Web servicesプラットフォームは、簡単に共同動作可能なメッセージングのフレームワークである。それは依然として多くの安全やルートなどの重要な特性を欠く。しかし、SOAPがより高級になると、これらの問題は解決される。
Web servicesは、アプリケーションがより通信しやすくなる可能性がある。
 
 
数年前、Web servicesの速度はまだ人々に興味を持たせるほど速くないです。
主なIT開発者の最近の努力に感謝します。多くの人々と企業はブロードバンド接続を持っています。
最も重要なことは共同作業です。
すべての主要なプラットフォームはWebブラウザを通じてWebにアクセスできるため、異なるプラットフォームはこれによって相互作用することができる。これらのプラットフォームを連携させるために、Webアプリケーションが開発されました。
Webアプリケーションは、Web上で動作する簡易アプリケーションである。これらはウェブブラウザの標準をめぐって構築され、ほとんどいかなるプラットフォームの上の任意のブラウザによって使用されてもよい。
WebservicesはWebアプリケーションを別のレベルにアップグレードしました。
Web servicesを使うことで、あなたのアプリケーションは世界中に機能やメッセージを発信することができます。
Web servicesはXMLを用いてデータを復号し、SOAPを用いてオープンプロトコルによってデータを転送する。
Web servicesを通じて、あなたの会計部門のWin 2 kサーバはITプロバイダのUNIXサーバと接続できます。
Webservicesには二つのタイプのアプリケーションがあります。
繰り返し使用できるアプリケーションコンポーネント
いくつかの機能は異なるアプリケーションでよく使われます。どうしてそれらを繰り返し開発しますか?
Web servicesは、為替レート変換、天気予報、または言語翻訳などのアプリケーションコンポーネントをサービスとして提供することができます。
理想的な場合は、各アプリケーションコンポーネントは一番優れたバージョンしかないので、誰でもそのアプリケーションで使用できます。
既存のソフトウェアを接続する
異なるアプリケーションにデータをリンクする方法を提供することにより、Web servicesは共同作業の問題を解決するのに役立つ。
Web servicesを使用することで、異なるアプリケーションとプラットフォームの間でデータを交換することができます。
 
 
Web Servicesは3つの基本的な要素を持っています。
これらはSOAP、WSDL、UDDIです。
SOAPとは何ですか
基本的なWeb servicesプラットフォームはXML+HTTPです。
・ SOAPとは、簡易オブジェクトアクセスプロトコルのことです。
・ SOAPは通信プロトコルである。
・ SOAPは、アプリケーション間の通信のために使用される。
・ SOAPはメッセージを送信するためのフォーマットである。
・ SOAPはインターネットを通じて通信するように設計されている。
・ SOAPはプラットフォームから独立している
・ SOAPは言語から独立している
・ SOAPはXMLに基づく
・ SOAPは簡単で拡張可能です。
・ SOAPはファイアウォールを迂回することができます。
・ SOAPはW 3 C標準として発展する。
SOAPに関する知識が必要な場合は、私達の『SOAP教程』にアクセスしてください。
WSDLとは
WSDLは、XMLに基づいてWeb Servicesを記述し、Web Servicesにどのようにアクセスするかを記述する言語である。
・ WSDLとは、ネットワークサービス記述言語のことです。
・ WSDLはXMLを使って作成します。
・ WSDLはXML文書です。
・ WSDLは、ネットワークサービスについて説明するためのものです。
・ WSDLは、測位ネットワークサービスにも利用できます。
・ WSDLはまだW 3 C規格ではありません。
WSDLについてもっと知りたいなら、私達の「WSDL教程」を訪問してください。
UDDIとは何ですか
UDDIはカタログサービスで、企業がWeb servicesを登録して検索することができます。
・ UDDIとは、汎用的な記述、発見および統合(Universal Description、Discvery and Integration)を指します。
・ UDDIはウェブservicesに関する情報を格納するためのディレクトリです。
・ UDDIはWSDLによって記述されるネットワークサービスインターフェースディレクトリである。
・ UDDIはSOAPを介して通信する。
・ UDDIはMicrosoft.NETプラットフォームの中に構築されています。
 
 
任意のアプリケーションは、Web Serviceコンポーネントを持つことができます。
Web Servicesの作成はプログラミング言語の種類とは関係がない。
一例:ASP.NET Web Service
この例では、ASP.NETを使って簡単なWebサービスを作成します。
<%@ WebService Language="VB" Class="TempConvert" %>
 
Imports System
Imports System.Web.Services
 
 
Public Class TempConvert :Inherits WebService
 
<WebMethod()> Public Function FahrenheitToCelsius
(ByVal Fahrenheit As Int16) As Int16
         Dim celsius As Int16 
         celsius = ((((Fahrenheit) - 32) / 9) * 5) 
         Return celsius
End Function
 
<WebMethod()> Public Function CelsiusToFahrenheit
(ByVal Celsius As Int16) As Int16
         Dim fahrenheit As Int16
         fahrenheit = ((((Celsius) * 9) / 5) + 32) 
         Return fahrenheit
End Function
End Class
この文書は.asmxファイルです。これはXML WebServices用のASP.NETファイルの拡張子です。
この例を実行するには,NETサーバが必要です。
この文書の最初の行はこれがWeb Serviceであることを示し、VBによって編纂され、そのクラス名は「TempCovert」である。
<%@ WebService Language="VB" Class="TempConvert" %>
次のコードラインは.NETフレームから名前空間「System.Web.Services」を導入しました。
Imports System
Imports System.Web.Services
次の行は「TempConvert」クラスを定義します。WebSerivceクラスです。
Public Class TempConvert :Inherits WebService
次のステップは基本的なVBプログラミングです。このアプリケーションには2つの関数があります。一つは華氏度を摂氏度に変えて、もう一つは摂氏度を華氏度に変えます。
通常のアプリケーションと唯一の違いは、この関数を「WebMethod」と定義しています。
ウェブservicesになりたいアプリケーションでは、「WebMethod」を使って関数をマーキングしてください。
<WebMethod()> Public Function FahrenheitToCelsius
(ByVal Fahrenheit As Int16) As Int16
         Dim celsius As Int16 
         celsius = ((((Fahrenheit) - 32) / 9) * 5) 
         Return celsius
End Function
 
<WebMethod()> Public Function CelsiusToFahrenheit
(ByVal Celsius As Int16) As Int16
         Dim fahrenheit As Int16
         fahrenheit = ((((Celsius) * 9) / 5) + 32) 
         Return fahrenheit
End Function
最後にやるべきことは関数とクラスを終了することです。
End Function
 
End Class
このファイルを.asmxファイルとして保存してサポートに公開すると.NETのサーバに最初に動作可能なWeb Serviceがあります。
ASP.NETの自動化処理
ASP.NETを通じて、自分でWSDLとSOAP文書を書く必要はありません。
この例を詳しく研究してみると、ASP.NETは自動的にWSDLとSOAP要求を作成することが分かります。
 
 
 
私たちのASP.NET Web Serviceの例を使用します。
前のセクションで、私たちは一つを作成しました。 Webサービスの例。
ここで華氏度転換の関数をテストしてください。華氏度は摂氏度に変換されます。
ここで摂氏度の転換華氏度関数をテストしてください。摂氏度は華氏度に変換されます。
これらの関数はXML回答を送信します。
このテストはHTTP POSTを使用して、このようなXML応答を送信します。
<?xml version=「1.0」encoding=「utf-8」?
<ショートxmlns=”http://tempuri.org/>38
フォームを使ってWeb Serviceにアクセスします。
フォームとHTTP POSTを使うことで、ウェブサービスをあなたのサイトに置くことができます。
フォームの前面
華氏度は摂氏度に変換されます。
 
フォームの下端
フォームの前面
摂氏度を華氏度に変換します。
 
フォームの下端
ウェブサービスをあなたのサイトに置いてもいいです。
これらのコードを使ってウェブサービスをあなたのサイトに置いてもいいです。
<form target=“_blank”
action='http://w3school.com.cn/webservices/tempconvert.asmx/FahrenheitToCelsius'
method="POST"