WCF-i ja veebi API erinevus
Mis on WCF?
WCF tähistab Windows KOMMUNIKATSIOON Foundation. Seda kasutatakse hajutatud ja koostalitlusvõimeliste rakenduste loomiseks. WCF on tõhus platvorm teenusele orienteeritud rakenduste arendamiseks. See võimaldab arendajatel luua turvalisi, usaldusväärseid ja kõrge profiiliga arenduslahendusi, mida saab integreerida platvormide vahel ja olemasolevate investeeringutega koostoimida.
Mis on Web API?
ASP.NET Web API on raamistik, mis võimaldab teil luua HTTP-teenuseid brauserite ja mobiilseadmete jaoks. See on ideaalne platvorm arendamiseks RESTful rakendused ASP .NET Frameworkis.
ASP.NET Web API on laiendatav raamistik HTTP-põhiste teenuste loomiseks, millele pääseb juurde erinevates rakendustes erinevatel platvormidel, näiteks veeb, aknad, mobiilseadmed jne.
PÕHISED erinevused
- WCF pakub päringu-vastust, ühesuunalist või kahepoolset funktsiooni, samas kui Web API on vaikimisi ainult päring-vastus.
- WCF-i kasutatakse SOAP-põhiste teenuste arendamiseks, samas kui Web API-d kasutatakse nii SOAP-põhiste kui ka RESTfuli teenuste jaoks.
- WCF ei paku tuge MVC funktsioonidele, samas kui Web API toetab MVC funktsioone.
- WCF toetab HTTP, UDP ja kohandatud transpordiprotokolli, samas kui Web API toetab ainult HTTP-protokolli.
- WCF pakub teksti-, MTOM- ja binaarkodeeringu tuge, samas kui Web API toetab UTF-8 kodeeringuvormingut.
- WCF toetab sõnumijärjekordi, sõnumite turvalisust, duplekssuhtlust ja tehinguid, samas kui Web API ei toeta.
- WCF tähistab Windows KOMMUNIKATSIOON Foundation samas kui API tähistab rakendusprogrammi liidest.
Miks kasutada WCF-i?
Siin on WCF-i kasutamise plussid/kasud:
- WCF on ideaalne valik, kui kavatsete kasutada .NET Framework 3.5.
- WCF toetab mitut protokolli, nagu HTTP, TCP, nimega toru.
- WCF-teenus on kasulik, kui soovite luua teenust selliste standarditega nagu tehingute sõnumside turvalisus ja usaldusväärne sõnumite turvalisus.
- WCF-iga saate kasutada Request-Reply, One Way ja Duplex sõnumivahetuse mustreid.
Miks kasutada Web API-t?
Siin on veebi API kasutamise plussid/eelised:
- Veebi API toetab kokkuleppel põhinevaid CRUD-toiminguid, kuna see töötab HTTP-verbidega (GET, PUT, POST ja DELETE)
- Seda on lihtne defineerida, paljastada ja PUHASTAVAL viisil tarbida.
- ASP.Net Web API võimaldab teil näidata oma andmeid ja teenuseid erinevatesse seadmetesse.
- Veebi API on avatud lähtekoodiga, seega on see ideaalne võimalus RESTful teenuste loomiseks .NET platvormi kaudu.
- Võimaldab teil skaleeritavat ja lahtiühendatud veebiteenust arendada, mida teised arendajad saavad jagada ja kasutada veebiteenustele juurdepääsuks.
- Samuti on kasulik luua lihtsaid, mitte-SOAP-põhiseid HTTP-teenuseid.
WCF-i omadused
- Väga konfigureeritavad transpordid
- Paremad serialiseerimise võimalused
- Hästi integreeritud IIS-iga
- Lihtne isemajutamiseks
- Väga rikkalikud metaandmed
- Keeruline mudel avaldamiseks
- Rikkalikud andmelepingud
Veebi API omadused
- Tihedalt seotud HTTP-ga
- Lihtne testida
- Pakub tuge sisu läbirääkimistel
- Võimaldab avatud vormingut
- Ei sõltu platvormist
- Kindel ressursile orienteeritus
- 2. taseme kogemus tekkiva hüpermeedia toega
WCF vs veebiteenus
Parameeter | WCF | Veebi API |
---|---|---|
Sõnumivahetuse muster | Taotlege vastust, ühesuunaliselt või kahepoolselt. | Vaikimisi ainult päring-vastus. Veebipistikupesade integreerimisega saab siiski toetada täiendavat sõnumimustrit. |
hosting | IIS-i hostimise, isehostimise ja tööde aktiveerimise teenused. | Isehostimine ja IIS-i hostimine. |
Open Source | See ei ole avatud lähtekoodiga tarkvara. | See tarnitakse koos.Net frameworkiga.See on saadaval ka iseseisva allalaadimisena. |
MVC funktsioonide tugi | WCF ei paku mingit tuge MVC funktsioonidele, nagu kontrollerid, marsruutimine, filter, oksjoni tulemused jne. | ASP.NET Web API toetab MVC funktsioone, nagu marsruutimine, kontrollerid, tulemused, filter, tegevus jne. |
Kodeerimise tugi | Tekst, MTOM ja binaarne. | UTF-8 kodeeringuvormingu vaiketoetus. |
Toetus | HTTP, UDP ja kohandatud transpordiprotokolli tugi. | Toetab ainult HTTP-protokolli |
Mudeli kasutamine | Kasutaja omistatud programmeerimismudel. | Vastastab HTTP-verbid meetoditega |
konfiguratsioon | Kasutab klassi HttpConfiguration konfigureerimiseks faili web.config ja atribuute, kuid mitte teenuses web.config. | Veebi API-d saab konfigureerida teenuse web.config abil. |
PUHKAVAD teenused | See pakub RESTFUL teenuse tuge, kuid piirangutega. | Ideaalne RAHUSTATUD teenuste ehitamiseks. |
Otsustav tegur WCF vs Web API jaoks
Järgnev on kiire kontroll-loend, mis aitab otsustada, kas kasutada WCF-i või veebi API-d
Stsenaarium | WCF 4.5 | ASP.NET Web API |
---|---|---|
Nõuab tuge sellistele stsenaariumidele nagu sõnumijärjekorrad, sõnumite otsast lõpuni turvalisus, dupleksside, hajutatud tehingud jne. | valima | ÄRGE valige |
Kui teil on juba töötavad WCF-teenused ja soovite lisaks lisada HTTP-toe. | valima | ÄRGE valige |
Üks koodibaas nii SOAP-i kui ka RESTfuli lõpp-punktide toetamiseks. | valima | ÄRGE valige |
Soovib luua ressursile orienteeritud teenust HTTP kaudu. | ÄRGE valige | valima |
Teie projekt on MVC-rakendus ja vajab mõnda HTTP-funktsiooni. | ÄRGE valige | valima |
Soovite luua ainult HTTP / RESTful teenuseid | ÄRGE valige | valima |