Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

FAQ Web servisi

[es] :: .NET :: FAQ Web servisi

[ Pregleda: 15247 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
..ndg-pm4-1.dialup.nethere.net



+6 Profil

icon FAQ Web servisi30.06.2002. u 00:59 - pre 265 meseci
Q: Šta su to uopšte Web Servisi i čemu služe?

A: Ulogu i značaj Web Servisa najlakše možemo razumeti ako se poslužimo primerom. Pogledajmo jednu tipičnu Web aplikaciju kao što je recimo Systran-ov on-line prevodilac ( http://www.systransoft.com ). Kako radi ova aplikacija? Korisnik startuje neki web browser, pošalje http zahtev za gorepomenuti URL i dobije HTML stranu na kojoj je između ostalog forma za unos teksta i izbor jezika. Kada unese tekst, korisnik pritisne "Translate" i na taj način pošalje sledeći http zahtev server aplikaciji; ona prevede traženi tekst i vrati HTML stranu na kojoj se između ostalog nalazi i prevod traženog teksta. Dakle, Systran-ova aplikacija ne samo da prevodi tekst već i određuje na koji način će taj prevod biti prikazan kod korisnika. Da bi se ovaj prevodilac koristio, neophodno je imati web browser koji je podržan od strane Systran-a.

E sad, pretpostavimo da je Systran napravio svoj on-line prevodilac tako da izloži svoju osnovnu funkciju (prevođenje teksta) bez određivanja vizuelnog interfejsa kod prevodioca. Ta aplikacija bi očekivala tekst "zapakovan" u neki standardan format, prevela bi tekst i vratila ga onom ko je tražio prevod u tom istom formatu, bez ikakvih uputstava na koji način taj prevod treba prikazati. Upravo to rade Web servisi: oni "ponude" funkcije korisničkim programima preko interneta. Format kojim se razmenjuju poruke se zove SOAP i baziran je na XML - u. Zbog toga se ponekad upotrebljava i naziv XML Web servisi.


Q: Koje su prednosti Web servisa u odnosu na "klasične" Web aplikacije.

A: Prednosti su sledeće:
1. Fleksibilniji su. Klasične Web aplikacije se mogu koristiti samo uz pomoć Web browser-a, pri čemu korisnik nema nikakvog uticaja na to kako će rezultat izgledati na njegovom ekranu, osim ako ne napravi program koji će da iz dobijenog HTML-a "izvlači" interesantne podatke i prikazuje ih na željeni način. Web servise mogu da koriste najrazličitiji programi: počev od drugih Web servisa, preko Web aplikacija, GUI programa ili čak tzv. command-line aplikacija. Recimo servis za prevod teksta koji smo pomenuli kao primer, može da koristi Altavista.com, program za obradu teksta kao što je MS Word, može se napraviti i programčić u Unix tradiciji koji bi radio u stilu "ttx -ef mytextfile" (prevod sadržaja fajla mytextfile sa engleskog na francuski), a mogao bi da bude korišćen i sa npr. mobilnih telefona ili ručnih računara koji imaju vezu sa internetom. Svi ovi različiti "klijenti" bi koristili jedan isti Web servis i autori tog servisa ne bi morali ni da znaju kakve sve različite aplikacije ga koriste.
2. Štedljiviji su po pitanju opterećenja mreže i resursa servera. Ako opet pogledamo primer sa Systran-ovom Web aplikacijom, videćemo da ona najpre mora da pošalje korisniku HTML sa formom za unos teksta, a posle prevoda šalje mu ne samo prevedeni tekst, već i HTML kod koji opisuje kako taj tekst treba da bude prikazan. Web servis bi primio jedan zahtev sa originalnim tekstom i poslao jedan odgovor sa prevedenim tekstom - nikakav dodatni HTML.
3. Lakši su za razvoj, testiranje i održavanje. Kod Web aplikacije je neophodno odraditi ne samo funkciju programa, već i dizajn i sve to dobro istestirati sa raznim browserima i platformama. Ko je probao da uskladi da Web aplikacija izgleda dobro na različitim browserima zna kakva je to muka (pitajte autora ovog sajta), a kad se napravi neka izmena, proces testiranja ide iz početka. Sa Web servisima svega toga jednostavno nema. Autor servisa brine o funkciji - prikaz je na klijentima.

Q: Znači li to da će Web servisi zameniti Web aplikacije koje rade sa HTML-om?.

A: Ne, osim u retkim slučajevima. Web servisi imaju svoj spektar primene koji je mnogo širi od onog koje pokrivaju Web aplikacije. Međutim, u mnogim slučajevima je još uvek bolje raditi sa HTML prikazom nego praviti specijalizovane programe koji će tumačiti podatke dobijene od servera. ES je primer Web aplikacije koja treba da ostane u ovom obliku, mada nije nemoguće dodati i Web servis.-menad�erskom delu firme. Rezul
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
..g-c5300-1.dialup.nethere.net



+6 Profil

icon Re: FAQ Web servisi30.06.2002. u 04:23 - pre 265 meseci
Q: Kako se prave Web servisi?

A: Postoji priličan broj alata i platformi za razvoj Web servisa. Pomenućemo nekoliko:

1. ASP.NET. Razvija ga Microsoft, mada se rade i neke Open Source alternative. Osnovne dobre strane su: lakoća korišćenja, dobar alat za razvoj (VS.NET), dosta dokumentacije. Loša strana je ograničenost na Microsoft-ove operativne sisteme.

http://msdn.microsoft.com/libr...pnetwebservices.asp?frame=true

2. Rešenja zasnovana na Javi.

http://java.sun.com/webservices/

Od raznih Java alata za tu namenu izdvajamo Sun-ov ONE
http://wwws.sun.com/software/sundev/jde/index.html

IBM-ov WebSphere SDK for Web Services
http://www-106.ibm.com/developerworks/webservices/wsdk/

Borlandov JBuilder
http://www.borland.com/jbuilder/webservices/index.html

Apache SOAP
http://xml.apache.org/soap/

Glavna prednost ovakvog pristupa je zastupljenost Jave na mnogim platformama. Mane su Javine mane a i njih ima dosta...

3. C++ rešenja
Mada se u medijima najčešće pominju Java i .NET kao alati za izradu Web servisa, itekako je moguće to raditi i u C++u. Pomenimo nekoliko pristupa:

Microsoft-ov ATL Server - izvanredno rešenje ako radite na Microsoftovim platformama.
http://msdn.microsoft.com/libr...rverWebServices.asp?frame=true

Borlandov C++ Builder 6
http://www.borland.com/cbuilder/enterprise/index.html

I jedna Open Source varijanta: gSOAP
http://www.cs.fsu.edu/~engelen/soap.html
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
..ndg-pm4-1.dialup.nethere.net



+6 Profil

icon Re: FAQ Web servisi30.06.2002. u 21:48 - pre 265 meseci
Q: Kako da napravim neki jako prost Web servis uz pomoć .NET -a?

A: Jako lako. Najpre budite sigurni da imate instaliran IIS na mašini. Zatim napravite fajl prost.asmx i unesite sledeći kod:

Code:

<%@ WebService Language="C#" Class="ProstServis" %>

using System;
using System.Web.Services;

public class ProstServis : WebService
{
     [WebMethod]
     public string ProstMetod(string ulaz)
    {
          return ulaz  + "je prost";
     }
}


Iskopirajte ovaj fajl u virtualni folder "ProstFolder". Da biste proverili da je sve u redu, otvorite browser i idite na adresu http://localhost/ProstFolder/prost.asmx. Trebalo bi da u browser-u vidite osnovne podatke o vašem servisu.


Q: A da li to može brže/efikasnije sa VS.NET-om

A: Naravno. Pogledajte lep tutorijal na
http://www.codeproject.com/cs/webservices/myservice.asp


Q: Kako da napravim klijent program za gornji primer?

A: Najpre će vam trebati WSDL fajl za taj servis. WSDL fajl sadrži sve potrebne podatke o servisu na osnovu kojih klijent može da komunicira sa njim. Iz command prompt-a kucajte

WSDL http://localhost/rostFolder/prost.asmx?WSDL

Na ovaj način ste dobili proksi klasu ProstServis.cs preko koje možete da komunicirate sa Web servisom. Iz klijent programa napravite promenljivu tipa ProstServis i pozovite metod ProstMetod.

Code:

ProstServis servis = new ProstServis();
string rezultat = servis.ProstMetod("prostak");


 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: FAQ Web servisi11.07.2002. u 18:13 - pre 265 meseci
Q: A ima li neki primer gotovih Web Service-a na internetu?

A: Da, naravno. Recimo, na sajtu http://www.xmethods.com ima puno interesantnih primera, među njima i BabelFish za prevod teksta. Koga interesuje, mogu da mu pošaljem i jednostavan klijent, urađen u C#-u.

 
Odgovor na temu

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
62.162.102.*

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: FAQ Web servisi08.10.2002. u 14:15 - pre 262 meseci
Pored resenja koje naveo tata, (C++,Java,ASP)
mozete koristiti i nekoliko alternativnih i isto tako kvalitetnih implementacija web servisa i SOAP protokola,

1. PHP SOAP:
http://pear.php.net/packages.p...=23&catname=Web%20Services

2. Delphi / Kylix:
http://community.borland.com/article/0,1410,27986,00.html

i jos jedan java pristup kao dopuna apache SOAP implementacije:
http://xml.apache.org/axis/
People who think they know everything tend to irritate those of us who do.
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
199.171.112.*



+6 Profil

icon Re: FAQ Web servisi10.09.2003. u 18:07 - pre 250 meseci
Za Perl programere: SOAP::Lite

http://www.soaplite.com/

Za Python programere:

http://sourceforge.net/projects/pywebsvcs
 
Odgovor na temu

[es] :: .NET :: FAQ Web servisi

[ Pregleda: 15247 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.