LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vorresti leggere La campana
Niente spam

Il titolo dell'argomento è davvero una domanda, perché Io stesso non so cosa sia e per la prima volta cercherò di lavorarci nell'ambito di questo articolo. L'unica cosa che posso garantire è che il codice seguente funzionerà, tuttavia, le mie frasi saranno solo supposizioni e ipotesi su come io stesso comprendo tutto questo. Quindi andiamo...

introduzione

Dobbiamo partire da ciò per cui è stato creato il concetto di servizi web. Quando è apparso questo concetto, esistevano già tecnologie nel mondo che consentivano alle applicazioni di interagire a distanza, dove un programma poteva chiamare un metodo in un altro programma, che poteva quindi essere lanciato su un computer situato in un'altra città o addirittura in un altro paese. Tutto questo è abbreviato in RPC (Remote Procedure Calling - chiamata di procedura remota). Gli esempi includono le tecnologie CORBA e per Java - RMI (Remote Method Invoking - remote method invocation). E tutto sembra andare bene in loro, soprattutto in CORBA, perché puoi lavorarci con qualsiasi linguaggio di programmazione, ma mancava ancora qualcosa. Credo che lo svantaggio di CORBA sia che funziona attraverso alcuni dei suoi protocolli di rete invece del semplice HTTP, che passerà attraverso qualsiasi firewall. L'idea di un servizio Web era quella di creare un tale RPC da inserire nei pacchetti HTTP. Iniziò così lo sviluppo della norma. Quali sono i concetti base di questa norma:
  1. SAPONE. Prima di chiamare una procedura remota, è necessario descrivere questa chiamata in File XML e formato SOAP. SOAP è solo uno dei tanti markup XML utilizzati nei servizi web. Tutto ciò che vogliamo inviare da qualche parte tramite HTTP viene prima trasformato in una descrizione SOAP XML, quindi inserito in un pacchetto HTTP e inviato a un altro computer della rete tramite TCP/IP.
  2. WSDL. Esiste un servizio web, ad es. un programma i cui metodi possono essere chiamati in remoto. Ma lo standard richiede che a questo programma sia allegata una descrizione, che dice che "sì, non ti sei sbagliato - questo è davvero un servizio web e puoi chiamare tali metodi da esso". Questa descrizione è rappresentata da un altro file XML che ha un formato diverso, ovvero WSDL. Quelli. WSDL è solo un file XML che descrive un servizio Web e nient'altro.
Perché così breve chiedi? Non puoi entrare più nel dettaglio? Probabilmente puoi, ma per questo dovrai rivolgerti a libri come Mashnin T. "Java Web Services". Lì per le prime 200 pagine va descrizione dettagliata ogni tag degli standard SOAP e WSDL. Ne vale la pena? Secondo me no, perché tutto questo viene creato automaticamente in Java e devi solo scrivere il contenuto dei metodi che dovrebbero essere chiamati in remoto. Quindi, in Java esiste un'API come JAX-RPC. Se qualcuno non sa quando dice che Java ha una tale API, significa che esiste un pacchetto con un insieme di classi che incapsulano la tecnologia in questione. JAX-RPC si è evoluto da una versione all'altra per molto tempo e alla fine si è evoluto in JAX-WS. WS ovviamente sta per WebService e potresti pensare che questa sia una semplice ridenominazione di RPC in una parola d'ordine popolare in questi giorni. Non è così, perché ora i servizi web si sono allontanati dall'idea originale e consentono non solo di chiamare metodi remoti, ma anche semplicemente di inviare messaggi di documenti in formato SOAP. Perché questo sia necessario, non lo so ancora, è improbabile che la risposta qui sia "per ogni evenienza, è improvvisamente necessario". Io stesso vorrei imparare da compagni più esperti. E infine, JAX-RS è apparso per i cosiddetti servizi web RESTful, ma questo è un argomento per un articolo separato. Questa introduzione può essere completata, perché. successivamente impareremo come lavorare con JAX-WS.

Approccio generale

I servizi Web hanno sempre un client e un server. Il server è il nostro servizio Web ed è talvolta chiamato endpoint (come l'endpoint a cui raggiungono i messaggi SOAP dal client). Dobbiamo fare quanto segue:
  1. Descrivi l'interfaccia del nostro servizio web
  2. Implementa questa interfaccia
  3. Avvia il nostro servizio web
  4. Scrivere un client e chiamare in remoto il metodo del servizio Web desiderato
Il servizio web può essere lanciato diversi modi: descrivi una classe con un metodo principale ed esegui il servizio Web direttamente come server, oppure distribuiscilo su un server come Tomcat o qualsiasi altro. Nel secondo caso, noi stessi non avviamo un nuovo server e non apriamo un'altra porta sul computer, ma semplicemente diciamo al contenitore servlet Tomcat che "abbiamo scritto classi di servizi web qui, per favore pubblicale in modo che tutti coloro che ti contattano possano usarle il servizio web. Indipendentemente da come viene lanciato il servizio web, avremo lo stesso client.

server

Avvia IDEA e crea un nuovo progetto Crea nuovo progetto. Specifica un nome ciaoservizioweb e premere il pulsante Prossimo, quindi il pulsante finire. Nella cartella src creare un pacchetto it.javarush.ws. In questo pacchetto creeremo l'interfaccia HelloWebService: pacchetto ru. javarush. ws; // queste sono annotazioni, ad es. un modo per contrassegnare le nostre classi e metodi, // in relazione alla tecnologia dei servizi web importa javax. jw. WebMetodo; importa javax. jw. servizio web; importa javax. jw. sapone. Rilegatura del sapone; // diciamo che la nostra interfaccia funzionerà come un servizio web@Servizio web // diciamo che il servizio Web verrà utilizzato per chiamare i metodi@SOAPBinding(style = SOAPBinding.Style.RPC) interfaccia pubblica HelloWebService( // diciamo che questo metodo può essere chiamato in remoto@WebMethod public String getHelloString(Nome stringa) ; ) In questo codice, le classi WebService e WebMethod sono le cosiddette annotazioni e non fanno altro che contrassegnare la nostra interfaccia e il suo metodo come un servizio web. Lo stesso vale per la classe SOAPBinding. L'unica differenza è che SOAPBinding è un'annotazione con parametri. In questo caso, il parametro style viene utilizzato con un valore che dice che il servizio web funzionerà non tramite messaggi di documento, ma come un classico RPC, ad es. per chiamare il metodo. Implementiamo la nostra logica di interfaccia e creiamo una classe HelloWebServiceImpl nel nostro pacchetto. A proposito, noto che la classe che termina con Impl è una convenzione in Java, secondo la quale l'implementazione delle interfacce è così designata (Impl - dalla parola implementazione, cioè implementazione). Questo non è un requisito e sei libero di nominare la classe come vuoi, ma le buone maniere lo richiedono: pacchetto ru. javarush. ws; // stessa annotazione della descrizione dell'interfaccia, importa javax. jw. servizio web; // ma qui viene utilizzato con il parametro endpointInterface, // indicando il nome completo della classe di interfaccia del nostro servizio web@WebService(endpointInterface= "it.javarush.ws.HelloWebService") la classe pubblica HelloWebServiceImpl implementa HelloWebService ( @Override public String getHelloString (nome stringa) ( // ricambia solo il saluto restituisce "Ciao, " + nome + "!" ; ) ) Eseguiamo il nostro servizio web come server autonomo, ad es. senza la partecipazione di alcun Tomcat e dei server delle applicazioni (questo è un argomento per una discussione separata). Per fare ciò, nella struttura del progetto nella cartella src creiamo un pacchetto ru.javarush.endpoint e in esso creeremo una classe HelloWebServicePublisher con il metodo main: package ru. javarush. punto finale; // classe per avviare un server web con servizi web importa javax. xml. v. punto finale; // classe del nostro servizio web importare it. javarush. v. ciaowebserviceimpl; public class HelloWebServicePublisher( public static void main(String. . . args)( // avvia il server web sulla porta 1986 // e all'indirizzo specificato nel primo argomento, // avvia il servizio Web passato nel secondo argomento punto finale. pubblicare( "http://localhost:1986/wss/hello", nuovo HelloWebServiceImpl() ); ) ) Ora esegui questa classe facendo clic Maiusc+F10. Non apparirà nulla nella console, ma il server è in esecuzione. Puoi verificarlo digitando http://localhost:1986/wss/hello?wsdl nel tuo browser. La pagina aperta, da un lato, dimostra che abbiamo un server web (http://) in esecuzione sulla porta 1986 sul nostro computer (localhost) e, dall'altro, mostra la descrizione WSDL del nostro servizio web. Se interrompi l'applicazione, la descrizione diventerà inaccessibile, così come il servizio web stesso, quindi non lo faremo, ma passeremo alla scrittura del client.

Cliente

Nella cartella del progetto src creiamo un pacchetto ru.javarush.client e in esso la classe HelloWebServiceClient con il metodo main: package ru. javarush. cliente; // necessario per ottenere la descrizione di wsdl e attraverso di essa // raggiungere il servizio web stesso importa java. rete. URL; // tale eccezione si verificherà quando si lavora con l'oggetto URL importa java. rete. MalformedURLException; // Classi per analizzare xml con descrizione wsdl // e raggiungi il tag di servizio al suo interno importa javax. xml. spazio dei nomi. Qnome; importa javax. xml. v. servizio; // interfaccia del nostro servizio web (ci serve altro) importare it. javarush. v. servizio web ciao; public class HelloWebServiceClient( public static void main(String args) genera MalformedURLException( // crea un collegamento alla descrizione di wsdl url= nuovo URL( "http://localhost:1986/wss/hello?wsdl") ; // Esaminiamo i parametri del prossimo costruttore nel primissimo tag di descrizione WSDL - definizioni // guarda il primo argomento nell'attributo targetNamespace // Il 2° argomento cerca nell'attributo name QName qname = nuovo QName ("http://ws.site/" , "HelloWebServiceImplService" ); // Ora possiamo raggiungere il tag di servizio nella descrizione wsdl, Servizio di servizio = Servizio. creare (url, qname) ; // e quindi al tag port nidificato in esso, in modo che // ottiene un riferimento a un oggetto del servizio Web remoto da noi HelloWebService ciao = servizio. getPort(HelloWebService.class) ; // Evviva! Ora puoi chiamare il metodo remoto Sistema. fuori. println(ciao. getHelloString("JavaRush" ) ) ; ) ) Ho fornito un massimo di commenti sul codice nell'elenco. Non ho nulla da aggiungere, quindi corri (Shift + F10). Dovremmo vedere il testo nella console: Hello, JavaRush! Se non l'hai visto, probabilmente hai dimenticato di avviare il servizio web.

Conclusione

Questo thread presentato breve digressione ai servizi web. Ancora una volta, gran parte di ciò che ho scritto è una mia ipotesi su come funziona, e quindi non dovrei fidarmi troppo. Vi sarei grato se persone esperte Verrò corretto, perché allora imparerò qualcosa. UPD.

Un servizio Web è un programma a cui è possibile accedere da altri programmi su Internet (http). Ad esempio, supponiamo di avere una funzione che fornisce il testo in formato HTML. Lo scopo dell'applicazione è un browser web che visualizza i risultati e una persona può facilmente leggere questo testo sulla pagina.

D'altra parte, il pubblico di destinazione di un servizio Web è costituito da altri programmi o altri servizi Web che consumano i dati serviti dal servizio Web. In genere, i prelievi vengono effettuati a lingua standard, che può essere compreso da altri programmi. Prendi l'esempio sopra se il servizio Web restituisce il testo in formato XML, quindi altri servizi Web in grado di leggere o comprendere XML possono utilizzare tale output.

Il vantaggio principale di un servizio web è che le applicazioni possono essere scritte in qualsiasi lingua, ma possono comunicare e comunicare tra loro tramite un servizio web. Applicazioni software, scritto in diversi linguaggi di programmazione e funzionante su diverse piattaforme, può utilizzare servizi web per lo scambio di dati su Internet (HTTP). Questa interazione (ad esempio, tra Java e Python, o Applicazioni Windows e Linux) è associato all'uso di standard aperti (XML, SOAP, HTTP).

  • SOAP (Simple Object Access Protocol)
  • UDDI (Descrizione universale, scoperta e integrazione)
  • WSDL (linguaggio di descrizione dei servizi Web)

Quanti tipi diversi di servizi web esistono?

In primo luogo, esistono due tipi di servizi Web, Simple Object Access Protocol (SOAP) e Representational State Transfer (REST).

  • Il servizio Web SOAP accetta una richiesta XML e genera un output XML.
  • Il servizio Web REST è più generico e può accettare XML e JSON come richiesta e generare output in XML, JSON o persino HTML

Questo problema può essere studiato più in dettaglio sul nostro.

Annotazione: Aree di utilizzo. Vantaggi. Caratteristiche dello sviluppo di servizi web per la piattaforma .NET. Descrizione e scoperta di un servizio web

Che cos'è un servizio Web XML?

Con lo sviluppo della tecnologia dell'informazione, ci sono stati approcci diversi alla scrittura di programmi: modulare programmazione, evento guidato programmazione, orientato ai componenti programmazione e design. La logica continuazione di questi approcci era orientata al servizio sviluppo software.

L'uso di approcci orientati ai servizi permette di parlare di riutilizzo (riutilizzo) a livello macro (livello di servizio), in contrapposizione al livello micro (livello di oggetto). Un approccio orientato ai servizi implica l'uso di standard semplici e generalmente accettati, che consentono a un'ampia varietà di applicazioni di utilizzare le reciproche funzionalità. I servizi possono essere scritti utilizzando un'ampia varietà di linguaggi di programmazione, su una varietà di piattaforme. Inoltre, i servizi possono essere distribuiti separatamente o come parte di pacchetto software in qualsiasi parte del mondo e forniranno così l'accesso alle loro funzionalità attraverso la rete.

Chiamiamo servizio una risorsa che implementa una funzione aziendale e ha le seguenti proprietà:

  • è riutilizzabile;
  • definito da una o più interfacce esplicite indipendenti dalla tecnologia;
  • liberamente accoppiato ad altre risorse simili e può essere invocato attraverso protocolli di comunicazione che consentono alle risorse di interagire tra loro.

Un caso speciale di un servizio è un servizio Web XML.

Servizio Web XMLè un tipo speciale di applicazione web che:

  • distribuito su un server web;
  • pubblica metodi web che possono essere richiamati da client esterni;
  • attende la ricezione delle richieste HTTP, che sono comandi per chiamare metodi web;
  • esegue metodi Web e restituisce risultati.

A differenza di un'applicazione Web tradizionale, un servizio Web non dispone di un'interfaccia utente. Invece, ce l'ha interfaccia software, ovvero il servizio web fornisce funzioni (metodi web) richiamabili da remoto (ad esempio via Internet). Il servizio Web non è progettato per servire gli utenti finali. Il suo compito è fornire servizi ad altre applicazioni, siano esse applicazioni web, applicazioni con una grafica interfaccia utente o applicazioni console.

Il servizio web può fornire informazioni in tempo reale sui prezzi delle azioni, controllare carte di credito o segnalare le previsioni del tempo. I servizi Web sono tanto diversi quanto le applicazioni convenzionali.

I servizi Web non sono di proprietà di una determinata azienda. È uno standard industriale basato su protocolli aperti (SOAP, HTTP, ecc.). I servizi Web sono distribuiti su varie piattaforme (inclusi i server sotto Controllo di Windows o UNIX). I servizi Web possono essere sviluppati utilizzando molti strumenti di sviluppo (da editor di testo alla famiglia Microsoft studio visivo ).

I metodi della maggior parte dei servizi Web sono chiamati da richieste HTTP contenenti messaggi SOAP SOAP è un linguaggio XML (vocabolario XML) per chiamare procedure remote su HTTP e altri protocolli ( Descrizione completa SAPONE http://www.w3.org/TR/SOAP).

Il posto dei servizi web tra le altre tecnologie di chiamata remota

Ci sono molti protocolli e tecnologie chiamata a distanza: Componente distribuito Microsoft Modello a oggetti( DCOM ), la Common Object Request Broker Architecture ( CORBA ) di Sun's Remote Method Invocation ( RMI ), . NET Remoting, servizi Web XML.

Tutte queste tecnologie orientate ai componenti (DCOM, CORBA e RMI) sono state utilizzate con successo nelle applicazioni Intranet per molti anni. Forniscono un'architettura robusta e scalabile. Tuttavia, ci sono due problemi principali con l'utilizzo di queste tecnologie su Internet. In primo luogo, non interagiscono bene tra loro. Tutte le tecnologie operano con gli oggetti, ma differiscono significativamente nei dettagli: ciclo vitale, supporto del costruttore e grado di supporto dell'ereditarietà. Il secondo aspetto, più importante, è che l'attenzione alle interazioni RPC porta alla costruzione di sistemi strettamente accoppiati basati su chiamate esplicite di metodi a oggetti.

A differenza di queste tecnologie, i servizi Web XML e . NET Remoting implementare completamente approccio orientato agli oggetti per la programmazione web.

Servizio Web XML- un componente che fornisce un set ai client Internet Funzioni API o metodi web. XML fa parte del nome perché i servizi Web ei loro client lo utilizzano per scambiare dati. I servizi Web si basano su standard aperti, come HTTP, XML (Extensible Markup Language), SOAP (Simple Object Access Protocol, uno standard Internet che descrive come le applicazioni possono comunicare, ovvero chiamarsi a vicenda, utilizzando HTTP e altri protocolli). Il compito principale dei servizi Web è fornire l'interazione tra i programmi. Molti funzionano su server UNIX e sono accessibili da client Windows. I dati passati ai servizi Web vengono serializzati su XML e inviati in pacchetti SOAP. I metadati sul contenuto di tali messaggi sono archiviati nel contratto WSDL del servizio Web e negli schemi XSD. Il vantaggio principale di questo approccio è la leggibilità dei metadati. Uno sviluppatore può facilmente visualizzare l'intera descrizione di un servizio Web e persino creare il proprio modulo che analizza i pacchetti SOAP.

Remoto .NET fornisce l'infrastruttura per gli oggetti distribuiti. È molto più complesso di una semplice architettura di servizi Web basata sul passaggio di messaggi. . NET Remoting include il passaggio di parametri per riferimento e valore, callback, attivazione di più oggetti e criteri di gestione del ciclo di vita. Per utilizzare queste funzionalità, l'applicazione client deve essere competente in tutte le tecnologie. Dati in. NET Remoting vengono inviati in formato binario o SOAP. Tuttavia, in ogni caso, i metadati sulla struttura delle informazioni trasmesse sono contenuti nel Common Language Runtime. Senza un Common Language Runtime (CLR), l'applicazione client non sarà in grado di analizzare il file . NET Intestazioni SOAP remote. Questo è. NET Remoting ha requisiti significativamente più elevati rispetto ai servizi Web.

Sviluppo di servizi web su piattaforma .NET

Ci sono molti modi per scrivere servizi web. Possono essere sviluppati manualmente o utilizzando strumenti SOAP forniti da Microsoft, IBM e altri.Scrivere servizi Web con aiuto da Microsoft. NET ha due vantaggi:

  • .NET Framework semplifica notevolmente il processo di sviluppo fornendo una libreria di classi e automatizzando i singoli passaggi di sviluppo;
  • I servizi Web scritti con .NET Framework sono applicazioni gestite. Ovvero, in tali applicazioni non sono presenti problemi di perdite di memoria, puntatori inizializzati in modo errato e altri problemi. problemi tipici programmazione.

Creazione

Sviluppiamo un semplice servizio web AdditionService che esegue l'addizione di due numeri. Avrà un solo metodo Add che accetta due numeri interi come parametro e restituisce anche un intero. AdditionService illustra diversi principi importanti per la programmazione di servizi Web utilizzando Microsoft .NET Framework.

  • I servizi Web sono implementati come file ASMX. ASMX è un'estensione del nome file speciale registrata con ASP .NET (più specificamente, il gestore HTTP ASP.NET) nel file di configurazione principale di ASP .NET Machine.config.
  • I file ASMX iniziano con la direttiva @WebService. Questa direttiva deve contenere almeno l'attributo Class, che specifica la classe in cui è costituito il servizio Web.
  • Le classi di servizi Web possono avere attributi WebService facoltativi. A questo esempio tale attributo specifica il nome del servizio Web e la descrizione che viene visualizzata nella pagina HTML quando l'utente chiama AdditionService.asmx nel browser.
  • I metodi Web vengono dichiarati assegnando l'attributo WebMethod ai metodi pubblici della classe del servizio Web. Per i metodi di supporto utilizzati internamente ma non disponibili per client esterni, questo attributo viene semplicemente omesso.
  • HTTP, XML e SOAP sono "invisibili". I dati XML ei messaggi SOAP sono gestiti da .NET Framework.

AdditionService.asmx<%@ WebService language="C#" Class="AddService" %>utilizzando System utilizzando la classe System.Web.Services AddService ( public int Add (int a, int b) ( return a + b ) )

Nonostante le sue piccole dimensioni, AdditionService.asmx è un servizio Web completo se installato su un server Web ASP.NET. I suoi metodi vengono invocati con SOAP, HTTP GET e HTTP POST e possono restituire risultati come risposte SOAP o come semplici wrapper XML.

Utilizzando il codice in background, le classi del servizio Web possono essere rimosse dai file asmx in file separati.

I servizi Web supportano l'uso tipi di dati complessi come parametri di ingresso o di uscita. I tipi di dati complessi sono supportati perché XML semplifica la serializzazione della maggior parte dei tipi di dati. Tuttavia, durante il test automatico di un servizio Web, ASP .NET non genera pagine di test per metodi che accettano tipi di dati complessi. Questo perché non è possibile passare tipi di dati complessi al metodo Web utilizzando HTTP GET e POST.

I servizi Web consentono di chiamare i propri metodi in modo asincrono. Una chiamata asincrona ritorna immediatamente, indipendentemente dal tempo impiegato dal servizio Web per elaborare la chiamata. Le chiamate asincrone sono utili quando l'elaborazione di una chiamata richiede molto tempo. L'applicazione effettua la chiamata, quindi continua a essere eseguita senza attendere il risultato della chiamata e successivamente riceve i risultati della chiamata asincrona. Il risultato si ottiene richiamando nuovamente il metodo web in un momento opportuno per l'applicazione, oppure sottoscrivendo una notifica di fine elaborazione della chiamata da parte del servizio web (meccanismo dei delegati).

I servizi Web possono essere creati utilizzando strumenti come Microsoft Visual Studio 2005. Esiste un tipo di progetto di servizio Web ASP .NET separato per la creazione di servizi Web. Visual Studio genera un file asmx, un file con codice in background per descrivere le classi del servizio Web, un file di configurazione del servizio Web e così via. Quando il progetto viene avviato per l'esecuzione, le classi del servizio vengono compilate e il file asmx viene aperto in una finestra del browser.

Descrivere i servizi Web utilizzando i contratti

Affinché altri sviluppatori possano utilizzare AdditionService, devono sapere quali metodi espone, quali protocolli supporta, firme del metodo e l'indirizzo del servizio Web (URL). Tutte queste e altre informazioni possono essere descritte in WSDL (linguaggio di descrizione del servizio Web).


Scoperta del servizio Web

Come fanno gli altri sviluppatori a sapere dell'esistenza di AdditionService?

In primo luogo, con l'aiuto di DISCO (abbreviazione della parola discovery) - un meccanismo di file per la ricerca di servizi Web locali, ovvero un meccanismo per ottenere un elenco di servizi Web disponibili da file DISCO ospitati su server Web. Inoltre, i file DISCO contengono record della posizione dei contratti WSDL dei servizi disponibili. Il file DISCO è un file XML con record.

È anche possibile utilizzare file VSDISCO, che sono simili ai file DISCO, ma il loro contenuto è il risultato di una ricerca dinamica di servizi Web nelle directory specificate e in tutte le sottodirectory nidificate. ASP .NET associa l'estensione del nome file .vsdisco a un gestore HTTP che ricerca nella directory specificata e nelle relative sottodirectory asmx e disco e restituisce un documento DISCO generato dinamicamente. Per motivi di sicurezza, la ricerca dinamica è disabilitata in alcune versioni di .NET Framework, ma puoi abilitarla modificando le voci nel file Machine.config.

Ma com'è la ricerca dei servizi web nella rete globale? Per cercare servizi Web nella rete globale, Microsoft, IBM e Ariba hanno sviluppato congiuntamente UDDI (Universal Description Discovery and Integration), una specifica per la creazione di basi distribuite dati che consentono di trovare servizi web. UDDI è supportato da centinaia di aziende. I siti UDDI sono essi stessi servizi web. Chiunque può pubblicare il proprio registro basato su UDDI. La maggior parte degli sviluppatori non utilizza mai direttamente l'API UDDI. Invece, i registri UDDI sono accessibili dagli strumenti di sviluppo. Generano anche classi wrapper per i servizi Web individuati e selezionati.

Risultati

Un servizio Web XML è un componente software che fornisce funzionalità che possono essere utilizzate da un'ampia varietà di sistemi che supportano standard quali XML e HTTP.I client del servizio Web possono essere locali o applicazioni remote. I servizi Web consentono di creare strutture che ne facilitano l'integrazione vari sistemi basato su standard semplici e generalmente accettati.

WEB-service - (dall'inglese web-service, sinonimo - servizio online). I servizi Web sono servizi forniti su Internet utilizzando programmi speciali. Ad esempio, servizi come: hosting, E-mail, archiviazione in rete informazioni varie(file, segnalibri), calendario, ecc. Una proprietà importante di un servizio web è che non dipende dal tuo provider, computer o browser: puoi lavorare con i tuoi dati ovunque nel mondo a cui hai accesso.

Knyazev AA Dizionario enciclopedico dei mass media. - Bishkek: casa editrice KRSU. AA Knyazev. 2002.

Scopri cos'è il "servizio WEB" in altri dizionari:

    servizio web

    servizio web- Servizio web. Servizio web, servizio web (servizio web in inglese) sistema software, identificata da una stringa di interfacce definita in XML, e trasmessa tramite protocolli Internet. Un servizio web è un'unità di modularità quando si utilizza ... ... Wikipedia

    Protocollo di comunicazione web cache- (WCCP) Protocollo di reindirizzamento dei contenuti sviluppato da Cisco. Fornisce un meccanismo per reindirizzare i flussi di traffico in tempo reale. Dispone di ridimensionamento integrato, bilanciamento del carico, tolleranza ai guasti. Cisco IOS ... ... Wikipedia

    Servizio mappe web- (WMS Russian Web Map Service) un protocollo standard per il servizio su Internet di immagini geograficamente referenziate generate da un server di mappatura basato sui dati di un database GIS. Questo standardè stato sviluppato e per la prima volta ... ... Wikipedia

    Web Hotel Salvador- (Salvador, Brasile) Categoria hotel: hotel 2 stelle Indirizzo: Rua das Alfazemas … Catalogo hotel

    Web Hotel Aparecida- (Aparecida, Brasile) Categoria hotel: hotel 3 stelle Indirizzo: Av. Isaac Ferrei … Elenco degli hotel

    architettura orientata ai servizi- I processi aziendali dell'organizzazione sono implementati sulla base dei servizi forniti dalle applicazioni esistenti del Cliente. Se le applicazioni non supportano la capacità di fornire servizi (servizi Web), l'implementazione del prodotto si sviluppa ... ... Manuale tecnico del traduttore

    web 2

    Web 2.0- Concetti chiave associati al Web 2.0 Il Web 2.0 (definizione di Tim O'Reilly) è una tecnica per progettare sistemi che, tenendo conto delle interazioni di rete, diventano migliori di più persone sono usati. Funzionalità Web 2.0. è il principio ... ... Wikipedia

    sito web- La query "sito web" viene reindirizzata qui. Vedere anche altri significati. Sito web (dall'inglese Website: web web e site "place") in rete di computer uniti sotto uno nome del dominio o indirizzo IP) una raccolta di documenti di un privato o ... ... Wikipedia

Libri

  • Tecnologie dell'informazione nell'industria del turismo, VN Shitov. Il manuale discute in dettaglio Tecnologie informatiche scopo generale usando popolare Pacchetti Microsoft Office 2010 e complessi alternativi, usa ... Acquista per 546 rubli
  • 75 Soluzioni complete per il tuo sito Web in PHP , Steinmetz W., Ward B.. Chiunque realizzi o intenda creare il proprio sito Web deve inevitabilmente affrontare una serie di compiti e difficoltà: come creare un blog sul sito..... votare "fissare", chiudere certi...

Un servizio web (servizio) è un programma che organizza l'interazione tra i siti. Le informazioni da un portale vengono trasferite a un altro.

Ad esempio, c'è una compagnia aerea. Ha molti voli, rispettivamente, molti biglietti. Trasmette le informazioni attraverso un servizio web al sito dell'aggregatore di viaggi turistici. Un utente che accede all'aggregatore potrà acquistare i biglietti per questa compagnia aerea proprio lì.

Un altro esempio di servizi Web è un sito di monitoraggio meteorologico che fornisce informazioni sulle condizioni meteorologiche in una particolare città o paese nel suo insieme. Questa informazione spesso utilizzato anche da terzi.

Le informazioni su Internet sono diverse. I siti sono gestiti da diversi sistemi. vengono utilizzati diversi protocolli di trasmissione e crittografia. I servizi Web semplificano lo scambio di informazioni tra siti diversi.

Architettura e protocolli dei servizi Web

Puoi definire 3 istanze che interagiscono tra loro: catalogo, appaltatore e cliente. Dopo aver creato il servizio, l'esecutore lo registra nel catalogo e il cliente trova lì il servizio.

Il meccanismo di scambio dei dati è formato nella descrizione dei servizi Web. Si tratta di una specifica che copre i formati di inoltro, i tipi di contenuto, i protocolli di trasporto utilizzati nello scambio di informazioni tra il cliente e il trasportatore di servizi.

Oggi, diverse tecnologie vengono utilizzate più spesso per implementare vari servizi web:

  1. TCP/IP è un protocollo compreso da quasi tutti apparecchiature di rete, dai mainframe ai dispositivi portatili e ai PDA.
  2. L'HTML è un linguaggio di markup universale utilizzato per visualizzare i contenuti sui dispositivi dei consumatori.
  3. XML è uno strumento universale per la gestione di tutti i tipi di dati. Sulla sua base possono funzionare anche altri protocolli di scambio di informazioni: SOAP e WSDL.
  4. UDDI è una fonte universale di riconoscimento, integrazione e descrizione. Funziona, di regola, nelle reti private e non ha ancora trovato una distribuzione sufficiente.

La versatilità delle tecnologie presentate è la base per comprendere i servizi web. Funzionano su tecnologie standard indipendenti dai fornitori di applicazioni e da altre risorse di rete. Può essere utilizzato in qualsiasi sistemi operativi, server applicativi, linguaggi di programmazione, ecc.

Vantaggi

  • Creazione condizioni necessarie per l'interazione di componenti software indipendentemente dalla piattaforma.
  • I servizi Web sono basati su protocolli standard aperti. Grazie all'introduzione di XML, è facile creare e configurare servizi web.
  • L'uso di HTTP garantisce l'interazione dei sistemi attraverso l'accesso alla rete.

Screpolatura

  • Scarse prestazioni e una grande quantità di traffico, rispetto ai sistemi RMI, CORBA, DCOM, a causa dell'uso di messaggi XML nel contesto del testo.
  • Livello di sicurezza. Tutti i servizi Web moderni devono implementare la codifica e richiedere l'autorizzazione dell'utente. Durante lo sviluppo viene deciso se HTTPS è sufficiente o se sono necessari protocolli più affidabili, come crittografia XML, SAML, ecc.

Attività del servizio Web

I servizi Web possono essere utilizzati in molte aree.

Transazioni B2B

L'integrazione dei processi avviene subito, senza la partecipazione delle persone. Ad esempio, aggiornare il catalogo di un negozio online con nuovi prodotti. Vengono portati al magazzino e il magazziniere segna l'arrivo nel database. Le informazioni vengono trasferite automaticamente al negozio online. E l'acquirente, invece di contrassegnare "Esaurito" sulla scheda del prodotto, ne vede la quantità.

Integrazione del servizio aziendale

Se l'azienda utilizza programmi aziendali, il servizio Web aiuterà a impostare il loro lavoro congiunto.

Realizzazione di un sistema client-server

I servizi vengono utilizzati per personalizzare il funzionamento di client e server. Questo ti dà i seguenti vantaggi:

  • non può vendere da solo Software, ma effettuano l'accesso a pagamento al servizio web;
  • più facile risolvere i problemi utilizzando software di terze parti;
  • è più facile organizzare l'accesso al contenuto e ai materiali del server.

Un servizio web è un'applicazione che semplifica configurazione tecnica interazioni con le risorse.

LA CAMPANA

C'è chi ha letto questa notizia prima di te.
Iscriviti per ricevere gli ultimi articoli.
E-mail
Nome
Cognome
Come vorresti leggere La campana
Niente spam