Heim > php教程 > PHP开发 > Funktionsprinzip und Beispiele von Webservices

Funktionsprinzip und Beispiele von Webservices

高洛峰
Freigeben: 2016-12-15 14:58:51
Original
1507 Leute haben es durchsucht

Funktionsprinzip des Webdienstes

                                                                                                                  Anfragen von anderen Systemen weitergeleitet, leichte unabhängige Kommunikationstechnologie. Ja: Ein Softwaredienst, der über das Web über SOAP bereitgestellt, mithilfe einer WSDL-Datei beschrieben und über UDDI registriert wird.

XML: (Extensible Markup Language) Erweiterbare Markup-Sprache. Für die kurzfristige temporäre Datenverarbeitung und das World Wide Web ist es die Grundlage von Soap.

Soap: (Simple Object Access Protocol) Simple Object Access Protocol. Es ist das Kommunikationsprotokoll des XML-Webdienstes. Wenn der Benutzer Ihr WSDL-Beschreibungsdokument über UDDI findet, kann er eine oder mehrere Operationen in dem von Ihnen erstellten Webdienst über SOAP aufrufen. SOAP ist eine Spezifikation zum Aufrufen von Methoden in Form von XML-Dokumenten. Es kann verschiedene zugrunde liegende Schnittstellen wie HTTP(S) oder SMTP unterstützen.

WSDL: (Web Services Description Language) Eine WSDL-Datei ist ein XML-Dokument, das eine Reihe von SOAP-Nachrichten und deren Austausch beschreibt. In den meisten Fällen automatisch von der Software generiert und verwendet.

UDDI (Universal Description, Discovery, and Integration) ist ein neues Projekt, das sich hauptsächlich an Webdienstanbieter und Benutzer richtet. Bevor Benutzer einen Webdienst aufrufen können, müssen sie feststellen, welche Geschäftsmethoden im Dienst enthalten sind, die aufgerufene Schnittstellendefinition finden und Software auf der Serverseite kompilieren. UDDI ist ein Mechanismus, der das System anleitet, den entsprechenden Dienst basierend auf zu finden Beschreibungsdokument. UDDI verwendet den SOAP-Messaging-Mechanismus (Standard-XML/HTTP), um Registrierungsinformationen zu veröffentlichen, zu bearbeiten, zu durchsuchen und zu finden. Es verwendet das XML-Format, um verschiedene Arten von Daten zu kapseln und an das Registrierungszentrum zu senden, oder das Registrierungszentrum gibt die erforderlichen Daten zurück.


2. Aufrufprinzip

Die Implementierung eines vollständigen Webdienstes umfasst die folgenden Schritte:

Funktionsprinzip und Beispiele von Webservices◆ Webdienstanbieter-Design Implementieren Veröffentlichen Sie den Webdienst, veröffentlichen Sie den korrekt debuggten Webdienst über den Webdienstvermittler und registrieren Sie ihn im UDDI-Registrierungszentrum (veröffentlichen).

◆ Der Webdienstanforderer fordert bestimmte Dienste vom Webdienstvermittler an fragt das UDDI-Registrierungszentrum entsprechend der Anfrage ab und findet Dienste, die die Anfrage für den Anforderer erfüllen (Erkennung)

◆ Der Webdienst-Vermittler gibt die Webdienstbeschreibungsinformationen, die die Bedingungen erfüllen, an den Webdienst-Anforderer zurück. Die Beschreibungsinformationen werden in WSDL geschrieben und können von verschiedenen Maschinen gelesen werden, die Webdienste unterstützen (Discovery)

◆ Verwenden Sie die vom Webdienstvermittler zurückgegebenen Beschreibungsinformationen, um die entsprechende SOAP-Nachricht zu generieren und an diese zu senden der Webdienstanbieter implementiert den Webdienstaufruf; (Bindung)

◆ Der Webdienstanbieter führt den entsprechenden Webdienst gemäß der SOAP-Nachricht aus und gibt das Dienstergebnis an den Webdienstanforderer zurück. (Bindung)




3. Aufrufmethode:

Eine einfache und flexible Methode zum dynamischen Aufrufen von WebService unter Net (C#). )

Es gibt 3 Möglichkeiten, den Webservice aufzurufen

1). httpget
3). Es können strukturierte Daten übergeben werden, die ersten beiden jedoch nicht.
Übrigens verwendet Soap endlich HTTP, um XM zu übertragen



Webservice-Instanz




1. Verwenden Sie CXF, um einen Webservice-Server zu entwickeln :

Jede Webdienstkomponente erfordert 2 Teile: Schnittstelle und Implementierungsklasse:

Schritte:

1. Bereiten Sie das für die Entwicklung erforderliche JAR-Paket vor [apache-cxf-2.5 . 9 Download】

2. Entwickeln Sie eine Webservice-Geschäftsschnittstelle und verwenden Sie @WebService, um die Methode zu ändern.

3. Schreiben Sie eine Implementierungsklasse für diese Methode. Die Methode muss auch mit @WebService geändert werden. Im Folgenden werden die zu implementierende Schnittstelle und der Dienstname angegeben.

Funktionsprinzip und Beispiele von Webservices

4. Stellen Sie die Funktion des Webdienstes bereit:

package com.ywx;  
  
import javax.jws.WebService;  
  
@WebService  
public interface HelloWorld {  
    String sayHi(String name);  
}
Nach dem Login kopieren
Führen Sie dann den Browser aus und geben Sie Folgendes ein: http://192.168.1.7/ vashon?wsdl Überprüfen Sie die Ergebnisse. Wenn das folgende WSDL-Dokument erfolgreich generiert wurde, bedeutet dies, dass der Webdienst erfolgreich verfügbar gemacht wurde.

package com.ywx.impl;  
  
import java.util.Date;  
  
import javax.jws.WebService;  
  
import com.ywx.HelloWorld;  
@WebService(endpointInterface="com.ywx.HelloWorld",serviceName="HelloWorldWs")//指定webservice所实现的接口以及服务名称  
public class HellowWorlds implements HelloWorld{  
  
    @Override  
    public String sayHi(String name) {  
        return name+"您好!现在时间是:"+new Date();  
    }  
  
}
Nach dem Login kopieren

二、使用CXF开发Web Service客户端:

步骤:

1、新建一个客户端工程

2、调用CXF提供的wsdl2java工具或使用eclipse/myeclipse的new Web Service生成客户端代码(这里使用第二种方式):

Funktionsprinzip und Beispiele von Webservices

输入wsdl链接:

Funktionsprinzip und Beispiele von Webservices

点击next:

Funktionsprinzip und Beispiele von Webservices

选择生成客户端代码的位置:

Funktionsprinzip und Beispiele von Webservices

点击finish,生成客户端代码如下:

Funktionsprinzip und Beispiele von Webservices

3、在客户端写测试类测试:

package com.ywx.test;  
  
import java.rmi.RemoteException;  
  
import com.ywx.HelloWorldProxy;  
  
  
public class TestService {  
    public static void main(String args[]){  
        HelloWorldProxy h = new HelloWorldProxy();  
        try {  
            String s = h.sayHi("yangwenxue");  
            System.out.println("调webservice:"+s);  
        } catch (RemoteException e) {  
            e.printStackTrace();  
        }  
    }  
}
Nach dem Login kopieren

运行结果(传入一个参数,调用Web Service返回的字符串结果如下):

Funktionsprinzip und Beispiele von Webservices

其调用生成的格式已经有服务端定义好了,看上面贴出来的代码或者下面的截图说明:

Funktionsprinzip und Beispiele von Webservices

Web Service服务端和客户端工程结果截图如下:

Funktionsprinzip und Beispiele von Webservices



更多Funktionsprinzip und Beispiele von Webservices相关文章请关注PHP中文网!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage