Mitä verkkopalveluita on olemassa? WEB-palvelu. Verkkopalveluiden tekninen toteutus
WEB-palvelu – (englanninkielisestä web-palvelusta, synonyymi – online-palvelu). Verkkopalveluilla tarkoitetaan palveluja, joita tarjotaan Internetissä erityisohjelmien avulla. Yleisiä ovat esimerkiksi palvelut, kuten: hosting, sähköposti, erilaisten tietojen tallentaminen Internetiin (tiedostot, kirjanmerkit), kalenteri jne. Verkkopalvelun tärkeä ominaisuus on, että se ei ole riippuvainen palveluntarjoajasta, tietokoneesta tai selaimesta - voit työskennellä tietojesi kanssa missä tahansa päin maailmaa, missä sinulla on pääsy .
Knyazev A.A. Tietosanakirja median sanakirja. - Biškek: KRSU Publishing House. A. A. Knyazev. 2002.
Katso, mitä "WEB-palvelu" on muissa sanakirjoissa:
Verkkopalvelu
Verkkopalvelu- Verkkopalvelu. Verkkopalvelu, verkkopalvelu (eng. web service) on ohjelmistojärjestelmä, joka tunnistetaan merkkijonolla, rajapinnat määritellään XML-kielellä ja lähetetään Internet-protokollien avulla. Verkkopalvelu on modulaarisuuden yksikkö, kun sitä käytetään... ... Wikipedia
Web Cache Communication Protocol- (WCCP) Ciscon kehittämä sisällön uudelleenohjausprotokolla. Tarjoaa mekanismin liikennevirtojen ohjaamiseen reaaliajassa. Siinä on sisäänrakennettu skaalaus, kuormituksen tasapainotus, vikasietoisuus. Cisco IOS... ... Wikipedia
Verkkokarttapalvelu- (WMS Russian web map service) vakioprotokolla maantieteellisesti viitattujen kuvien huoltoon Internetin kautta, jonka karttapalvelin generoi GIS-tietokannan tietojen perusteella. Tämä standardi kehitettiin ja ensimmäinen... ... Wikipedia
Web Hotel Salvador- (Salvador, Brasilia) Hotelliluokka: 2 tähden hotelli Osoite: Rua das Alfazemas ... Hotelliluettelo
Web Hotel Aparecida- (Aparecida, Brasilia) Hotelliluokka: 3 tähden hotelli Osoite: Av. Isaac Ferrei… Hotelliluettelo
palvelukeskeinen arkkitehtuuri- Organisaation liiketoimintaprosessit toteutetaan asiakkaan olemassa olevien sovellusten tarjoamien palvelujen perusteella. Jos sovellukset eivät tue palvelujen tarjoamista (Web Services), ne kehittävät tuotetta esitellessään... ... Teknisen kääntäjän opas
Verkko 2
Web 2.0- Web 2.0:aan liittyvät keskeiset käsitteet Web 2.0 (Tim O'Reillyn määrittelemä) on tekniikka sellaisten järjestelmien suunnitteluun, jotka verkkovuorovaikutus huomioon ottaen paranevat mitä enemmän ihmiset käyttävät niitä. Web 2.0:n ominaisuus. on periaate... ... Wikipedia
Verkkosivusto- Pyyntö "sivusto" ohjataan tänne. Katso myös muita merkityksiä. Verkkosivusto (englanninkielisestä verkkosivustosta: web-verkko ja sivusto "paikka") tietokoneverkossa, joka on yhdistetty yhden verkkotunnuksen tai IP-osoitteen alle) kokoelma yksityishenkilön asiakirjoja tai ... ... Wikipedia
Kirjat
- Tietotekniikka matkailualalla, V. N. Shitov. Käsikirjassa tarkastellaan yksityiskohtaisesti yleiskäyttöisiä tietokonetekniikoita käyttämällä suosittuja Microsoft Office 2010 -paketteja ja vaihtoehtoisia paketteja, käyttö... Osta 546 ruplalla
- 75 valmiita ratkaisuja Web-sivustollesi PHP:llä, Steinmetz U., Ward B.. Jokainen, joka tekee tai aikoo tehdä oman verkkosivuston, kohtaa väistämättä useita tehtäviä ja vaikeuksia: kuinka luoda blogi sivustolle. .. "kiristää" äänestystä, sulkea tietty...
Aiheen otsikko on todella kysymys, koska... En itse tiedä, mikä se on, ja yritän ensimmäistä kertaa työskennellä sen kanssa tämän artikkelin puitteissa. Ainoa asia, jonka voin taata, on, että alla esitetty koodi toimii, mutta lauseeni ovat vain olettamuksia ja arvauksia siitä, kuinka minä itse ymmärrän tämän kaiken. Mennään siis...
Johdanto
Meidän on aloitettava siitä, miksi verkkopalveluiden käsite luotiin. Kun tämä konsepti ilmestyi maailmaan, oli jo olemassa teknologioita, jotka mahdollistivat sovellusten vuorovaikutuksen etäältä, jolloin yksi ohjelma saattoi kutsua jonkin menetelmän toisessa ohjelmassa, joka voidaan käynnistää toisessa kaupungissa tai jopa maassa sijaitsevalla tietokoneella. Kaikki tämä on lyhennetty nimellä RPC (Remote Procedure Calling). Esimerkkejä ovat CORBA-tekniikat ja Java - RMI (Remote Method Invoking). Ja niissä kaikki näyttää olevan hyvin, varsinkin CORBAssa, koska... Voit työskennellä sen kanssa millä tahansa ohjelmointikielellä, mutta jotain silti puuttui. Mielestäni CORBA:n haittana on, että se toimii joidenkin omien verkkoprotokollien kautta yksinkertaisen HTTP:n sijaan, joka sopii minkä tahansa palomuurin läpi. Verkkopalvelun ideana oli luoda HTTP-paketteihin lisättävä RPC. Tästä alkoi standardin kehittäminen. Mitkä ovat tämän standardin peruskäsitteet:- SAIPPUA. Ennen kuin kutsut etätoimintoa, sinun on kuvattava tämä kutsu XML-tiedostossa SOAP-muodossa. SOAP on yksinkertaisesti yksi monista verkkopalveluissa käytetyistä XML-merkinnöistä. Kaikki, mitä haluamme lähettää jonnekin HTTP:n kautta, muunnetaan ensin XML SOAP -kuvaukseksi, täytetään sitten HTTP-paketiksi ja lähetetään toiselle verkon tietokoneelle TCP/IP:n kautta.
- WSDL. Siellä on verkkopalvelu, ts. ohjelma, jonka menetelmiä voidaan kutsua etänä. Mutta standardi edellyttää, että tähän ohjelmaan on liitettävä kuvaus, jossa sanotaan, että "kyllä, olet oikeassa - tämä on todella verkkopalvelu ja voit kutsua siitä sellaisia ja sellaisia menetelmiä." Tätä kuvausta edustaa toinen XML-tiedosto, jolla on eri muoto, nimittäin WSDL. Nuo. WSDL on vain XML-tiedosto, joka kuvaa verkkopalvelua eikä mitään muuta.
Yleinen lähestymistapa
Verkkopalveluissa on aina asiakas ja palvelin. Palvelin on verkkopalvelumme, ja sitä kutsutaan joskus päätepisteeksi (kuten päätepisteeksi, johon asiakkaan SOAP-viestit saavuttavat). Meidän on tehtävä seuraavat:- Kuvaile verkkopalvelumme käyttöliittymää
- Ota tämä käyttöliittymä käyttöön
- Avaa verkkopalvelumme
- Kirjoita asiakas ja soita etänä haluamaasi verkkopalvelutapaan
Palvelin
Aloitetaan IDEA ja luodaan uusi projekti Luo uusi projekti. Ilmoitetaan nimi HelloWebService ja paina painiketta Seuraava ja sitten -painiketta Suorittaa loppuun. Kansiossa src luodaan paketti ru.javarush.ws. Tässä paketissa luomme HelloWebService-rajapinnan: paketti ru. javarush. ws; // nämä ovat annotaatioita, ts. tapa merkitä luokat ja menetelmät, // verkkopalveluteknologiaan liittyen tuo javax. jws. WebMethod; tuo javax. jws. WebService; tuo javax. jws. saippua. SOAPBinding; // sanomme, että käyttöliittymämme toimii verkkopalveluna@WebService // sanomme, että verkkopalvelua käytetään menetelmien kutsumiseen@SOAPBinding (tyyli = SOAPBinding. Style. RPC) julkinen käyttöliittymä HelloWebService ( // sanomme, että tätä menetelmää voidaan kutsua etänä@WebMethod public String getHelloString(merkkijonon nimi) ; ) Tässä koodissa WebService- ja WebMethod-luokat ovat niin sanottuja annotaatioita eivätkä tee muuta kuin merkitsevät käyttöliittymämme ja sen menetelmän verkkopalveluksi. Sama koskee SOAPBinding-luokkaa. Ainoa ero on, että SOAPBinding on parametreilla varustettu huomautus. Tässä tapauksessa tyyliparametria käytetään arvolla, joka ilmaisee, että verkkopalvelu ei toimi dokumenttiviestien kautta, vaan klassisena RPC:nä, ts. kutsua menetelmää. Toteutetaan käyttöliittymälogiikkamme ja luodaan HelloWebServiceImpl-luokka pakettiimme. Muuten huomautan, että luokan päättäminen Impl:llä on Javassa käytäntö, jonka mukaan rajapintojen toteutus on niin määritelty (Impl - sanasta implementaatio, eli toteutus). Tämä ei ole vaatimus ja voit vapaasti nimetä luokan miten haluat, mutta hyvät tavat edellyttävät sitä: paketti ru. javarush. ws; // sama huomautus kuin käyttöliittymää kuvattaessa, tuo javax. jws. WebService; // mutta tässä sitä käytetään endpointInterface-parametrin kanssa, // ilmaisee verkkopalvelumme käyttöliittymäluokan koko nimen@WebService(endpointInterface= "ru.javarush.ws.HelloWebService") julkinen luokka HelloWebServiceImpl toteuttaa HelloWebServicen ( @Override public String getHelloString (merkkijonon nimi) ( // palauta vain tervehdys return "Hei, " + nimi + "!" ; ) ) Avataan verkkopalvelumme itsenäisenä palvelimena, ts. ilman Tomcatin ja sovelluspalvelimien osallistumista (tämä on erillisen keskustelun aihe). Voit tehdä tämän kansion projektirakenteessa src Luodaan paketti ru.javarush.endpoint, ja siihen luodaan HelloWebServicePublisher-luokka päämenetelmällä: package ru. javarush. päätepiste; // luokka web-palvelimen käyttämiseen verkkopalveluiden kanssa tuo javax. xml. ws. Päätepiste; // verkkopalvelumme luokka tuonti ru. javarush. ws. HelloWebServiceImpl; public class HelloWebServicePublisher ( julkinen staattinen void main (String... args) ( // käynnistä verkkopalvelin portissa 1986 // ja ensimmäisessä argumentissa määritettyyn osoitteeseen, // käynnistää toisessa argumentissa välitetty verkkopalvelu Päätepiste. julkaista( "http://localhost:1986/wss/hello", uusi HelloWebServiceImpl () ); ) ) Suoritetaan nyt tämä luokka napsauttamalla Vaihto+F10. Konsolissa ei näy mitään, mutta palvelin on käynnissä. Voit varmistaa tämän kirjoittamalla rivin http://localhost:1986/wss/hello?wsdl selaimeesi. Avautuva sivu toisaalta todistaa, että meillä on tietokoneellamme (localhost) porttia 1986 käyttävä web-palvelin (http://), ja toisaalta näyttää WSDL-kuvauksen verkkopalvelustamme. Jos lopetat sovelluksen, kuvaus ei ole käytettävissä, kuten myös verkkopalvelu itse, joten emme tee tätä, vaan siirrymme asiakkaan kirjoittamiseen.Asiakas
Projektikansiossa src Luodaan paketti ru.javarush.client ja siihen HelloWebServiceClient-luokka päämenetelmällä: paketti ru. javarush. asiakas; // tarvitaan wsdl-kuvauksen saamiseksi ja sen läpi // päästä itse verkkopalveluun tuo java. netto. URL-osoite; // Tämä poikkeus tapahtuu, kun työskentelet URL-objektin kanssa tuo java. netto. Väärin muotoiltuURL-poikkeus; // luokat jäsentämään xml wsdl-kuvauksella // ja saavuta siinä oleva palvelutunniste tuo javax. xml. nimiavaruus. QName; tuo javax. xml. ws. Palvelu; // verkkopalvelumme käyttöliittymä (tarvitsemme lisää) tuonti ru. javarush. ws. HelloWebService; public class HelloWebServiceClient ( julkinen staattinen void main (String args) heittää MalformedURLException ( // luo linkki wsdl-kuvaukseen URL url = uusi URL ( "http://localhost:1986/wss/hello?wsdl") ; // Katsomme seuraavan rakentajan parametreja WSDL-kuvauksen aivan ensimmäisessä tagissa - määritelmät // tarkastele targetNamespace-attribuutin ensimmäistä argumenttia // katso nimi-attribuutin toista argumenttia QName qname = uusi QName ("http://ws.site/" , "HelloWebServiceImplService" ) ; // Nyt voimme saavuttaa wsdl-kuvauksen palvelutunnisteen, Palvelupalvelu = palvelu. luo (url, qname) ; // ja sitten siihen sisäkkäiseen porttitunnisteeseen asti, jotta // saada linkki etänä olevaan verkkopalveluobjektiin HelloWebService hello = palvelu. getPort(HelloWebService.class); // Hurraa! Voit nyt kutsua etämenetelmää Järjestelmä. ulos. println (hei. getHelloString ( "JavaRush" ) ); ) ) Annoin suurimmat kommentit listassa olevasta koodista. Minulla ei ole mitään lisättävää, joten ajataan (Shift+F10). Meidän pitäisi nähdä teksti konsolissa: Hei, JavaRush! Jos et nähnyt sitä, olet luultavasti unohtanut käynnistää verkkopalvelun.Johtopäätös
Tämä aihe tarjosi lyhyen tutustumisen verkkopalveluihin. Toistan vielä kerran, että suuri osa kirjoittamistani asioista on minun arvaustani siitä, miten se toimii, ja siksi sinun ei pitäisi luottaa minuun liikaa. Olisin kiitollinen, jos asiantuntevat ihmiset korjaavat minua, koska silloin opin jotain. UPD.Tarkastelimme mekanismin käytön yleisiä käsitteitä « Web-palvelut". Päivitetään vähän tietoa.
Web-palveluita käytetään tiedon vaihtamiseen palvelimen ja asiakkaan välillä; XML-muotoa käytetään tietojen "pakkaamiseen" molempien viestinnän osallistujien keskinäisen ymmärryksen vuoksi.
LUKUminä
ESIMERKKI TÄYTÄNTÖÖNPANOSTAWEB- PALVELU 1C:ENTERPRISE-JÄRJESTELMÄSSÄ
TEHTÄVÄ: On tarpeen luoda verkkopalvelu, jonka kautta asiakkaat voivat määrittää kaikki tarvittavat tiedot sovelluksistaan.
Tehtävä on esittely ja toimii vain esimerkkinä mekanismin ymmärtämiseen ja opettamiseenweb-palvelut.
RATKAISU:
Vaihe 1. Luodaan uusi tietokanta ilman määrityksiä uuden kokoonpanon kehittämiseksi.
Vaihe 2. Lisätään kokoonpanoon useita uusia objekteja
Hakemisto "Asiakkaat";
Asiakirja "Hakemus";
Luettelo "Hakemuksen tilat".
Vaihe 3. Luodaan uusi XDTO-paketti.
Miksi ja mihin tarkoitukseen luomme XDTO-paketin? Lisätietoja XDTO-mekanismin käytöstä löytyy kohdista "Luku 16. Kehittäjän opas" ja .
Huomattakoon lyhyesti, että XDTO-mekanismi on universaali tapa esittää dataa vuorovaikutusta varten erilaisten ulkoisten tietolähteiden ja ohjelmistojärjestelmien kanssa.
Meidän tapauksessamme luodaan XDTO-paketti kuvaamaan verkkopalvelun palautusarvoa.
Laajenna "Yleinen" -haara → "XDTO-paketit" → Lisää…
Määritetään XDTO-paketin nimi " DocumentsData"ja sen nimiavaruuden http://localhost/request tai http://192.168.1.76/request (ymmärryksen ja oppimisprosessin helpottamiseksi osoitamme sen tietokoneen paikallisen IP-osoitteen, johon verkkopalvelin on asennettu (tuetut verkkopalvelimet: IIS tai Apache)). Jokainen Web-palvelu voidaan tunnistaa yksilöllisesti sen nimen ja sen nimitilan URI:n perusteella, johon se kuuluu.
Pakettimme sisältää kahden tyyppisiä XDTO-objekteja:
1) Asiakas- siirtää tietoja "Clients"-hakemistoelementistä.
- Nimi ;
2) Asiakirja- siirtää tietoja "Application"-asiakirjasta
Tämä XDTO-objektityyppi sisältää seuraavat ominaisuudet:
- Asiakas- kirjoita Сustomer nimiavaruudesta http://192.168.1.76/request ; edustaa viittausta XDTO-objektiin, jonka määritimme edellä;
- Tila- merkkijonotyyppi nimiavaruudesta http://www.w3.org/2001/XMLSchema ;
- Numero- merkkijonotyyppi nimiavaruudesta http://www.w3.org/2001/XMLSchema.
Vaihe 4. Lisätään kokoonpanoon uusi verkkopalvelu
Laajennamme haaraa "Yleiset" → "Verkkopalvelut" → Lisää…
Verkkopalvelulle määritämme seuraavat ominaisuusarvot:
Nimi - DocumentsData
Nimitilan URI - http://192.168.1.76/request
XDTO-paketit - DocumentsDatataihttp://192.168.1.76/request
Julkaisutiedoston nimi - request.1cws
Vaihe 5. Luodulle verkkopalvelulle määritämme toiminnon " GetData»
Toiminnan ominaisuuksien arvot:
Palautustyyppi - Asiakirja (http://192.168.1.76/request)
Mahdollisesti tyhjä arvo - Totta
Menettelyn nimi - GetData.
Vaihe 6. Leikkauksessa GetData Määritetään asiakasparametri seuraavilla ominaisuusarvoilla:
Arvon tyyppi - tyyppi merkkijono nimiavaruudesta http://www.w3.org/2001/XMLSchema;
Siirron suunta - syöttö.
Vaihe 7 Avataan luodun verkkopalvelun moduuli ja sijoitetaan siihen Get()-funktio, joka suoritetaan kun tätä verkkopalvelua kutsutaan.
Funktio GetData(Customer) // Hanki XDTO-objektien tyypit ClientType = FactoryXDTO.Type("http://192.168.1.76/request", "Customer"); RequestType = FactoryXDTO.Type("http://192.168.1.76/pyyntö", "Asiakirja"); // Hanki asiakas ClientLink = Directories.Clients.FindByName(Customer); Jos ei ValueFilled(ClientRef) Palauta Undefined; loppu Jos; Pyyntö = Uusi pyyntö; Request.Text = "VALITSE TOP 1 | Sovellus.Linkki, | ESITYS(Sovellus.Tila) AS-tila, | Sovellus.Numero |LÄHETTÄJÄ | Asiakirja.Pyyntö AS Application |WHERE | Application.Client = &Asiakas"; Request.SetParameter("Client", ClientLink); RequestResult = Request.Execute(); Jos QueryResult.Empty() Return Undefined; loppu Jos; Valinta = QueryResult.Select(); Valinta.Seuraava(); Asiakirja = Selection.Link.GetObject(); // Tilauksen XDTO-objektin luominen Order = FactoryXDTO.Create(OrderType); Application.Numder = näyte.numero; Asiakas = FactoryXDTO.Create(ClientType); Client.Name = Asiakaslinkki.Nimi; Application.Customer = Asiakas; Application.Status = Selection.Status; // Palauta pyyntö Palautushakemus; EndFunction
Vaihe 8 Julkaistaan luotu verkkopalvelu verkkopalvelimella.
Valikkokohta Configurator: "Hallinta" → "Julkaiseminen Web-palvelimella".
Valitse "Web Services" -välilehdellä "Julkaise verkkopalvelut" -valintaruutu ja valitse myös uuden verkkopalvelumme vieressä oleva valintaruutu.
LUKUII
ESIMERKKI VALITUKSESTAWEB-1C:ENTERPRISE-JÄRJESTELMÄPALVELUON KOLMANNEN OSAPUOLEN SOVELLUKSESTA
Verkkopalvelumekanismin päätarkoitus 1C:Enterprise-järjestelmässä on siirtää tarvittavat tiedot kolmansien osapuolien sovelluksiin.
Tarkastellaan esimerkkiä sovelluksen kehittämisestä Delphissä, joka kutsuu verkkopalveluumme tämän artikkelin ensimmäisestä osasta.
Vaihe 1. Luodaan uusi projekti ja asetetaan lomakkeelle useita säätimiä
Tekstikenttä - käytetään verkkopalvelusta vastaanotettujen tietojen näyttämiseen;
Kaksi painiketta - tekstikentän tyhjennys ja verkkopalveluun pääsy;
Syöttökenttä on verkkopalveluun välitetty parametri.
Vaihe 2. WSDL-tiedoston tuonti
Tuloksena saamme uuden moduulin pyyntö(määrittelimme tämän nimen suoraan 1C:ssä). Tämä moduuli sisältää kaikki tarvittavat tiedot verkkopalvelusta.
Vaihe 3. Kirjoitetaan verkkopalvelun puhelukäsittelijä
DocumentDataPortType-muuttuja on jo määritetty moduulissa pyyntö
Vaihe 4. Käynnistä sovellus ja suorita testi.
LUKUIII
ESIMERKKI VALITUKSESTAWEB-PALVELU 1C:ENTERPRISE-JÄRJESTELMÄSSÄ
Vaihe 1. Luodaan uusi ulkoinen käsittely nimellä "WEB_Service"
Vaihe 2. Määritellään uusi muoto käsittelyä varten
Vaihe 3. Ilmoitamme lomakkeella useita yksityiskohtia
Asiakas - kirjoita "String"
ClientReturn - kirjoita "String"
NumberReturn - kirjoita "String"
StatusReturn - kirjoita "String".
Näytämme tiedot lomakkeella.
Vaihe 4. Lisätään lomakekomento " Saadaksesi dataa»
Määritetään komentokäsittelijä
&OnClient-menettely GetData(Command) GetDataOnServer(Client); Toimenpiteen lopetusmenettely GetDataOnServer(Client) // Luo WS-välityspalvelin linkin perusteella ja suorita Get()-toiminto Definition = New WSDefinitions("http://192.168.1.76/WEB_Service/ws/request.1cws?wsdl") ; Välityspalvelin = Uusi WSProxy(määritelmä, "http://192.168.1.76/request", "DocumentsData", "DocumentsDataSoap"); Sovellustiedot = Proxy.GetData(Client); Jos Sovellustiedot = Undefined ClientReturn = "Määrittämätön"; StatusReturn = "Määrittämätön"; ReturnNumber = "Määrittämätön"; Palata; loppu Jos; CustomerReturn = Sovellustiedot.Asiakas.Nimi; StatusReturn = Sovellustiedot.Tila; Palautusnumero = Application Data.Numder; Menettelyn loppu
1C:Enterprise-järjestelmä voi käyttää muiden palveluntarjoajien verkkopalveluita kahdella tavalla:
Käyttämällä staattinen konfigurointipuussa luodut linkit;
"plus": suuri nopeus;
"miinus": tuomalla WSDL-kuvauksen uudelleen konfiguraattorilla ja tallentamalla muutettu kokoonpano.
Käyttämällä dynaaminen sisäänrakennetuilla kielityökaluilla luotuja linkkejä
(vastaavasti staattisten "haittoja" dynaamisille ovat "edut")
LUKUIV
VERKKOPALVELUJEN VIRKANTO 1C:ENTERPRISE-JÄRJESTELMÄSSÄ
Paikallista verkkopalvelua varten tarvitset:
Vaihe 1. Aseta tiedosto asiakkaalle, jossa 1C-järjestelmä toimii webservicecfg.xml seuraavalla sisällöllä
Vaihe 2. Arkistoida oletuksena. vrd julkaise asetusten lisäysrivi
Vaihe 3. Valitse konfiguraattorissa valikkokohta
"Virheenkorjaus" → "Yhteys" → "Automaattinen yhteys" → "Web-palvelut palvelimella"
Vaihe 4. Napsauta "OK"-painiketta
Palvelinvaihtoehtoa varten sinun on myös suoritettava 1c-palvelin virheenkorjaustilassa avaimella /debug
Verkkopalvelu (palvelu) on ohjelma, joka järjestää sivustojen välistä vuorovaikutusta. Portaalin tiedot siirretään toiseen.
Esimerkiksi siellä on lentoyhtiö. Hänellä on paljon lentoja, mikä tarkoittaa, että hänellä on paljon lippuja. Se välittää tietoa verkkopalvelun kautta matkankeräyssivustolle. Käyttäjä, joka käyttää kokoajaa, voi ostaa lippuja tälle lentoyhtiölle suoraan sieltä.
Toinen esimerkki verkkopalveluista on sääseurantasivusto, joka sisältää tietoa tietyn kaupungin tai maan sääolosuhteista kokonaisuudessaan. Näitä tietoja käyttävät usein myös kolmannet osapuolet.
Internetissä on monipuolista tietoa. Sivustoja hallinnoidaan eri järjestelmillä. Käytetään erilaisia siirto- ja salausprotokollia. Verkkopalvelut yksinkertaistavat tiedon vaihtoa eri sivustojen välillä.
Verkkopalveluarkkitehtuuri ja protokollat
Voit määrittää 3 viranomaista, jotka ovat vuorovaikutuksessa keskenään: luettelo, urakoitsija ja asiakas. Palvelun luomisen jälkeen urakoitsija rekisteröi sen luetteloon ja asiakas löytää palvelun sieltä.
Tiedonvaihtomekanismi on muodostettu Web Services -kuvauksessa. Tämä on spesifikaatio, joka kattaa edelleenlähetysmuodot, sisältötyypit ja siirtoprotokollat, joita käytetään asiakkaan ja palvelun kuljettajan välisessä tiedonvaihdossa.
Nykyään useita tekniikoita käytetään useimmiten erilaisten verkkopalvelujen toteuttamiseen:
- TCP/IP on protokolla, jonka ymmärtävät lähes kaikki verkkolaitteet keskustietokoneista kannettaviin laitteisiin ja PDA-laitteisiin.
- HTML on yleinen merkintäkieli, jota käytetään sisällön näyttämiseen kuluttajalaitteissa.
- XML on yleinen työkalu kaikentyyppisten tietojen käsittelyyn. Sen pohjalta voivat toimia muut tiedonvaihtoprotokollat: SOAP ja WSDL.
- UDDI on universaali tunnistamisen, integroinnin ja kuvauksen lähde. Se toimii pääsääntöisesti yksityisissä verkoissa eikä ole vielä löytänyt riittävää jakelua.
Esitettyjen teknologioiden monipuolisuus on perusta verkkopalveluiden ymmärtämiselle. Ne toimivat standarditekniikoilla, jotka ovat riippumattomia sovellusten toimittajista ja muista verkkoresursseista. Voidaan käyttää kaikissa käyttöjärjestelmissä, sovelluspalvelimissa, ohjelmointikielissä jne.
Edut
- Tarvittavien edellytysten luominen ohjelmistokomponenttien vuorovaikutukselle alustasta riippumatta.
- Verkkopalvelut perustuvat avoimiin standardiprotokolliin. XML:n käyttöönoton ansiosta verkkopalvelujen luominen ja konfigurointi yksinkertaistuu.
- HTTP:n käyttö takaa järjestelmien vuorovaikutuksen verkkoyhteyden kautta.
Vikoja
- Alhainen suorituskyky ja suuri liikennemäärä verrattuna RMI-, CORBA-, DCOM-järjestelmiin, johtuu XML-sanomien käytöstä tekstin yhteydessä.
- Turvallisuustaso. Kaikkien nykyaikaisten verkkopalvelujen tulee toteuttaa koodausta ja vaatia käyttäjän valtuutusta. Riittääkö HTTPS täällä vai tarvitaanko luotettavampia protokollia, kuten XML Encryption, SAML jne., päätetään kehityksen aikana.
Verkkopalvelutehtävät
Verkkopalveluita voidaan käyttää monilla alueilla.
B2B-tapahtumat
Prosessien integrointi tapahtuu välittömästi, ilman ihmisten osallistumista. Esimerkiksi verkkokaupan luettelon päivittäminen uusilla tuotteilla. Ne tuodaan varastoon, ja varastonpitäjä kirjaa saapumisen tietokantaan. Tiedot siirtyvät automaattisesti verkkokauppaan. Ja ostaja näkee tuotteen määrän sen sijaan, että se olisi merkinnyt tuotekorttiin "Loppu loppu".
Yrityspalvelujen integrointi
Jos yritys käyttää yritysohjelmia, verkkopalvelu auttaa heidän yhteisen työnsä perustamisessa.
Asiakas-palvelin järjestelmän luominen
Palveluita käytetään asiakkaan ja palvelimen konfigurointiin. Tämä tarjoaa etuja:
- Et voi myydä itse ohjelmistoa, vaan tehdä maksullisen pääsyn verkkopalveluun;
- On helpompi ratkaista ongelmia kolmannen osapuolen ohjelmistoilla;
- on helpompi järjestää pääsy palvelimen sisältöön ja materiaaleihin.
Verkkopalvelu on sovellus, joka yksinkertaistaa resurssien vuorovaikutuksen teknistä määritystä.
Nykyään WEB-palveluita käytetään lähes kaikkialla – ne antavat meille tietoa lento- ja junalennoista, valuuttakursseista ja säästä. Ei ole yllättävää, että 1C:llä on myös mahdollisuus luoda omia WEB-palvelujaan, jolloin se voi toimia sekä toimittajana että kuluttajana. Tämä mekanismi on sisäänrakennettu 1C:Enterprise 8.3 -alustaan, ja kehittäjät voivat jopa lisätä omia WEB-palvelutyyppisiä objekteja vakiokokoonpanoon. Niiden arkkitehtuuri perustuu joukkoon palveluita, joiden avulla voit vaihtaa tietoja muiden ohjelmistojen kanssa.
1C-verkkopalvelun luominen
Yksi 1C WEB -palvelujen tärkeimmistä eduista on se, että tietoturvatietoihin ei tarvitse tarjota suoraa pääsyä. Oikein konfiguroitu 1C-verkkopalvelu sallii muiden sovellusten käyttää toimintoja ulkopuolelta. Tällaisissa tapauksissa toiminnon tulee itse määrittää tietojen käyttöoikeus määritettyjen parametrien mukaisesti kehittäjän määrittelemien sääntöjen mukaisesti.
Kuinka luoda verkkopalvelu 1C:ssä?
Jotta tietty 1C-järjestelmän toiminto tulee saataville ulkoisille ohjelmistoille, on suoritettava seuraava toimintoalgoritmi:
- Siirry kokoonpanoon ja lisää WEB-palveluobjekti tiettyyn puun haaraan;
- Kuvaile kaikki toiminnot, joita toiminnallisuutemme voi suorittaa. Toimintojen kuvaus suoritetaan moduulissa sisäänrakennetulla 1C-kielellä;
- Lisää kuvaus verkkopalvelun toimintojen parametreista. Huomaa, että tietotyypit on kuvattu ottaen huomioon olemassa olevat XDTO-mekanismin tyypit, jotka esiteltiin alustan versiossa 8.1;
- Julkaise luotu WEB-palvelu palvelimella. 1C-alustaan sisäänrakennettu mekanismi tukee seuraavia standardeja:
- SSL/TLS
- WS-I BP
Esimerkki yksinkertaisen WEB-palvelun luomisesta
Jotta WEB-palvelumekanismin toiminta näkyy selkeimmin, luodaan esimerkki - toiminto, joka määrittää syötetyn merkkijonon pituuden. Ohjelmisto välittää merkkijonon pyyntöparametrina, ja kohdassa 1C kuvattu toiminto palauttaa merkkien määrän. Luodessasi sinun on muistettava, että tämän mekanismin julkaiseminen mahdollistaa sen, että useat ohjelmistot voivat käyttää sitä. Koska kaikki ohjelmistot eivät pysty hyväksymään kyrillisiä aakkosia, nimeämme konfiguraatioobjektit latinalaisilla kirjaimilla.
Avaa konfiguraattori, etsi puusta WEB-palvelut-haara ja lisää uusi palvelu "wa_LengthString". Sinun on myös lisättävä uusi toiminto "Toiminnot"-välilehdelle. Kutsutaan sitä "CalcLengthStringiksi", määritetään ominaisuuksissa palautusarvon tyyppi - int tai kokonaisluku ja luodaan "InputString"-parametri sen sisään. Jätä arvotyyppi merkkijonoksi.
Nyt sinun on rekisteröitävä CalcLengthString-funktion toiminta WEB-palvelumoduulissa. Voit tehdä tämän avaamalla luodun funktion ominaisuudet ja napsauttamalla oikealla olevaa suurennuslasin muotoista painiketta "Procedure name" -syöttökentän vieressä. 1C luo automaattisesti funktion WEB-palvelumoduuliimme ja avaa sen, jotta voimme kuvata CalcLengthString-toiminnon. Hyödynnetään tätä ja kirjoitetaan funktion toiminta - määritetään syötemerkkijonon pituus.
Itse asiassa tämä viimeistelee yksinkertaisen WEB-palvelun luomisen. Nyt tämä palvelu on "saatava" julkiseen verkkoon, jotta kolmannen osapuolen ohjelmistot tai muut 1C-järjestelmät voivat käyttää tätä toimintoa.
Jotta voimme julkaista luodun verkkopalvelun toiminnallisuuksineen, meillä on oltava pääsy sivustolle. Ennen kuin aloitamme palvelun julkaisemisen, meidän on tarkistettava tiedoston nimi luodun wa_LengthString-moduulin ominaisuuksista. Sen tulee olla selkeä, yksinkertainen ja sen laajennus on "1cws".
Nyt on aika julkaista palvelimelle luomamme WEB-palvelu. Tämä ominaisuus ilmestyi alustaversiossa 8.3, ja monet yritykset ovat jo ymmärtäneet tämän toiminnon kaikki edut. Julkaisemisen aloittamiseksi sinun on avattava "Hallinta/Julkaisu verkkopalvelimella..." -lomake konfiguraattorissa.
Avautuvassa ikkunassa meidän on määritettävä 1C-verkkopalvelut ja täytettävä tietyt kentät:
- Nimi. Osoittaa verkkopalvelimella olevan kansion, johon verkkopalvelumme kuvaus tallennetaan. Ole varovainen tapausten suhteen, sillä joskus palvelimet erottavat suuret ja pienet kirjainmerkit;
- Verkkopalvelin. Sinun on valittava palvelin tietokoneellesi asennettujen palvelinten joukosta.
- Luettelo. Sinun on valittava polku kansioon, johon on tallennettu verkkopalvelimen tiedot yhteyden muodostamista varten. Vain latinalaisia kirjaimia käytetään;
- Kaksi Boolen tyypin merkkiä. Ensimmäinen on hyödyllinen meille, jos meidän on määritettävä pääsy kokoonpanoon verkkoasiakkaan kautta. Jotta voit julkaista 1C-palvelun, sinun on valittava toinen ruutu.
Jäljelle jää vain tarkistaa, että halutun WEB-palvelun valintaruutu on valittuna ensimmäisessä sarakkeessa ja klikkaa "Julkaise".
Koska tämä mekanismi on vielä melko uusi, saatat kohdata virheen, kuten "Tiedostotoimintoa suoritettaessa tapahtui virhe...". Tässä tapauksessa sinun tarvitsee vain napsauttaa "Julkaise" uudelleen. Useimmissa tapauksissa tämä auttaa ja näet viestin, joka ilmoittaa, että verkkopalvelu on julkaistu.
Ru//ws/.1cws?wsdl
Vastauksena tällaiseen osoitepyyntöön selaimen on näytettävä XML-tiedoston rakenne. Jos näet tyhjän sivun, virheen tai outoja merkkejä (koodausongelmia), sinun on tarkistettava kaikki vaiheet uudelleen. On myös hyvä varmistaa, että palvelin on määritetty oikein ja että sinulla on pääsy siihen. Onnistuneen julkaisun jälkeen 1C WEB -palvelua voivat käyttää kolmannen osapuolen sovellukset.