Iwe unoda here kubatanidza app yako kuFacebook kuti igone kuburitsa mapositi otomatiki, kana ku Instagram kuti iwe ugone repost mafoto nemamwe ma hashtag?
Iwe unogona zvakare kuda kuisa YouTube mavhidhiyo pawebhusaiti yako. Application programming interfaces inobvumidza iwe kuita ese aya mabasa uye nezvimwe (APIs).
Zvishandiso zvakasiyana zvinogona "kutaura" kune mumwe nemumwe nenzira yakachengeteka uye yakajairwa nekutenda kune maAPI senge Instagram API, Facebook API, uye YouTube API.
Mune mamwe mazwi, chirongwa chinogona kutora maficha kana data kubva kune imwe chidimbu chesoftware uye kuishandisa kuvandudza zvayo maficha kana ruzivo rwemushandisi. Asi maapuro anogona sei kuita zvikumbiro izvi, kuzvigadzirisa, uye kuzvipindura nenzira iyo vamwe vanogona kunzwisisa?
Izvo zvinoenderana nekuti API yakagadzirwa sei. Paunenge uchikurukura nezve API (application programming interface) magadzirirwo, zvakajairika kuenzanisa SOAP vs. REST, maviri eanonyanyozivikanwa API paradigms.
Pakangosvika SOAP APIs (Simple Object Access Protocol) yakava mwero wegoridhe kumafemu akaita seOracle, Zuva, uye PayPal, pakave nemhinduro yakaenzana uye yakapesana gore kana kuti gare gare yakananga REST APIs kubva kuGoogle, Amazon, uye eBay.
Mune ino positi, isu tichafananidza nekusiyanisa SOAP APIs neREST APIs kuti iwe ugone kusarudza kuti ndeipi yakanakira zvinangwa zvako.
Tichatanga nekutsanangura iyo API.
Chii chinonzi API?
Application Programming Interface inonzi API. APIs anonyanya kuunganidza nzira uye mabasa anogonesa kuvandudzwa kwemaapuro. Ivo vanowana ruzivo uye mabasa ezvirongwa zvakasiyana, masevhisi, kana masisitimu anoshanda.
Ivo vanoshanda semhando yepakati pakati peakasiyana software masisitimu. Vanogonesa "kutaura" pakati pezvirongwa zviviri zvisina kubatana.
Ngatitorei muenzaniso we stockbroker ari kushingaira mukutengesa uye misika yemari. Muunganidzwa weotomatiki kutengesa algorithms inogona kubatanidzwa kune yaanofarira yekutengesa broker chikuva kuburikidza neAPI. Izvi zvinogonesa iwe, mutengesi, kuita zvemagetsi transaction kana kuona chaiyo-nguva makotesheni uye data yemitengo.
Chii chinonzi REST?
Chokwadi "masevhisi ewebhu" APIs anosanganisira REST (Representational State Transfer). REST APIs akavakirwa paURIs (Uniform Resource Identifiers, iyo URL imhando yakakosha), iyo HTTP protocol, uye zvinoshamisa browser-inoenderana JSON data fomati.
Iyo SOAP protocol, sezvatakambotaura, inogona zvakare kushandiswa. REST APIs anogona kuve nyore kugadzira nekukura, asi anogona zvakare kuve akakura uye akaoma- zvese zvinoenderana nekuti akagadzirwa sei, akawedzerwa, uye izvo zvaanoda kuita.
Zvipingamupinyi zvezvishandiso, zvakadzikiswa kuchengetedza zvinodiwa, bhurawuza mutengi kuenderana, kuwanikwa, hutano hwedata, uye scalability ndezvimwe zvikonzero zvaungade kugadzira API kuti ive RESTful-zvinhu zvinonyatsoshanda kumawebhu masevhisi.
REST inopa imwe yakareruka sarudzo. SIPO yanga yakaoma kushandisa uye kuremedza kune vakawanda vanogadzira. Semuyenzaniso, kushandisa SOAP neJavaScript kunoda kunyora kodhi yakawanda kuti upedze mashandiro ari nyore sezvo inodiwa XML chimiro chinofanirwa kugadzirwa nguva yega yega.
REST (kazhinji) inoshandisa URL yakatwasuka panzvimbo yechikumbiro cheXML. Kunyangwe paine zvisingawanzo mamiriro kana iwe uchifanira kupa rumwe ruzivo, mazhinji eRESTful webhu masevhisi anongoshandisa iyo URL maitiro.
Iwo mana echiito eHTTP 1.1 anoti GET, POST, PUT, uye DELETE anogona kushandiswa neREST kuita mashandiro. Kusiyana neSOAP, REST haidi mhinduro kuti ive muXML.
REST-yakavakirwa pawebhu masevhisi anoburitsa data muKuraira Yakaparadzaniswa Kukosha (CSV), JavaScript Object Notation (JSON), uye Really Simple Syndication (RSS) mafomati anowanikwa (RSS).
Chinangwa ndechekuti iwe ugone kuwana mibairo yaunoda nenzira iri nyore-kutsanangudza mukati memutauro wauri kushandisa pachikumbiro chako.
Features
- REST inosimbisa kuve nyore pamusoro pezvimwe zvese, nekuda kweHTTP protocol.
- Dandemutande rakanyatsokodzera REST. Inoenderana nemabhurawuza nekuti JSON inoshandiswa sefomati yedata.
- REST inozivikanwa nekusarudzika kwayo uye nekumhanya.
- Client-server yekubatanidza uye magadzirirwo anoitwa kuti awanikwe zvakanyanya neREST APIs. Kana iri RESTful, inovakwa pachishandiswa iyi client-server modhi, ine nzendo dzekutenderera pakati pemapato maviri achipfuura data payloads.
- REST APIs inoshandisa yega yakajairika interface. Kuve nechokwadi chekuti mapurogiramu ese anobatana zvakafanana uye kuburikidza negedhi rimwe chete, inokwenenzvera kuti maapplication anotaurirana sei neAPI.
Chii chinonzi SIPO?
Yayo protocol, inonzi SOAP (Simple Object Access Protocol), yakati tsikinyi kupfuura REST sezvo ichitsanangura mamwe mazinga, kusanganisira ayo ane chekuita nekuchengetedza uye kutumira meseji.
Aya maitiro echisikigo anouya nekamwe kakuwedzera pamusoro. Nekudaro, ivo vanogona kuve chinhu chinogadzirisa kune mabhizinesi anoda yakawedzera kuchengetedzeka, kutengeserana, uye ACID (Atomicity, Consistency, Isolation, Durability) kutevedzera kugona.
Nekuda kwekuenzanisa uku, zvakakosha kuti uzive kuti akawanda mabhenefiti eSOAP haawanzo shanda kune webhu masevhisi maapplication, zvichiita kuti zvive zvakanyanya kukodzera kune bhizinesi-mhando mamiriro.
Madhigirii epamusoro ekuchengetedza (senge apo a Mobile Anwendung inodyidzana nebhangi), kutumira mameseji kunoda kutaurirana kwakavimbika, kudyidzana nemasisitimu enhaka, kana kutevedzera ACID zvikonzero zvishoma zvaungade kugadzira application uchishandisa SOAP API.
Iko kugona kutumira mameseji kunopihwa neSOAP kwakavakirwa paXML. Tekinoroji dzekare-dzisingaenderane neinternet dzakaita seDistributed Component Object Model (DCOM) uye Common Object Request Broker Architecture dzakatsiviwa neSOAP payakatanga kugadzirwa neMicrosoft (CORBA).
Kuvimba nebhinari kutaurirana kunoita kuti masisitimu aya atadze. Pamusoro peinternet, mameseji eXML akafanana neanoshandiswa neSOAP anoshanda zvirinani.
Features
- Chengetedzo yeSOAP yakanyanya kusimba. WS-Security ndeye yakavakirwa-mukati chiyero inopa SOAP yekuwedzera bhizinesi-chikamu chekuchengetedza masimba kana zvichidikanwa mukuwedzera kune SSL rutsigiro.
- Kubudirira/edzazve kufunga kwekuita meseji yakavimbika. Nekuti REST inoshaya yakamisikidzwa meseji meseji, inogona kungoedza zvakare kana kutaurirana kwatadza. Kunyangwe kana uchishandisa SOAP yepakati, SOAP inopa kupera-kusvika-kumagumo kuvimbika nekuda kweiyo yakavakirwa-mukati yakabudirira / edzazve kufunga.
- SIPO inototevedzera ACID zviyero. Nekutaura kuti kutengeserana kunogona kudyidzana sei nedhatabhesi, kutevedzera ACID kunoderedza kusawirirana uye kunochengetedza kuwirirana kwedatabase. Nekuti ACID yakanyanya kungwarira kupfuura mamwe mamodheru edhata, inowanzoshandiswa pakugadzirisa mabatirwo akashata, angave emari kana neimwe nzira.
- Zviri nyore kuti vanogadzira zvirongwa vanzwisise sezvo SOAP iri yakazara XML-yakavakirwa kutaurirana.
- Iyo XML messaging protocol ndeyekuwedzera kune iyo HTTP protocol.
- Nhaurirano kubva kune imwe komputa kuenda kune imwe komputa inogona kuparadzirwa kuburikidza neSOAP messaging.
- Client-server architecture inogonawo kuitwa. Iyo SOAP protocol meseji inogona kushandiswa nemutengi kufonera iri kure maitiro ekufona iyo iri server-padivi.
REST Vs SOAP Kusiyana
1. akitekicha
An API inoitirwa kunyanya kuratidza chaiwo zvikamu zvebhizinesi logic yeapplication pane server. Nepo REST ichishandisa maURI kune chinangwa chimwe chete, SOAP inoshandisa Sevhisi Interface pane izvi.
REST APIs inogadzirwa mushure me data, nepo SOAP APIs inogadzirwa mushure mekushanda kunoratidzwa neAPI. Kuenzaniswa neSOAP, iyo inonyanya kushanda-inofambiswa, REST idhizaini inofambiswa nedata.
2. Caching
Iyo data yakanyorwa secacheable inogona kushandiswa nemabhurawuza zvakare pasina kuvada kuti vaite chikumbiro chitsva kune server. Kuchengetedza nguva uye kushanda nesimba ndiko kubatsira kweizvi.
Mhinduro hadzizochengetwe padanho reHTTP sezvo mibvunzo yeSOAP ichitumirwa kuburikidza nePOST zvikumbiro, izvo HTTP standard inoona isina-idepotent. Kana iwe uchida kushandisa caching, iwe unofanirwa kuvaka hunyanzvi hunodiwa sezvo REST APIs isingabatanidzi kuita uku.
3. Zvishandiso & Bandwidth
Nekuda kweiyo envelope-style payload transfer inoshandiswa neSOAP, pane kuwedzera zvine mwero kumusoro, izvo zvinoda kuwedzera bandwidth. REST's lightweight nature inobatsira mumamiriro ezvinhu aya nekuti inowanzo shandiswa kuwebhusaiti.
4. chibatiso
WS-security, iyo SOAP inotsigira uye ine zvishoma zvakanyanya kupfuura SSL padanho rekufambisa, inodiwa. Kubatanidza bhizinesi-chikamu chekuchengetedza nhanho nayo zvakare yakakwana yakakwana.
Kuguma-kusvika-kumagumo encryption uchishandisa SSL inotsigirwa nezvose SOAP uye REST, uye REST inogona kushandisa HTTPS, yakachengeteka musiyano weHTTP protocol.
5. Kubata Payloads
Data inofambiswa kuburikidza neInternet inonzi mubhadharo. Mubhadharo unonzi "unorema" unoda zvimwe zvekushandisa. Kuenzaniswa neSOAP, inoshandisa XML, REST inowanzoshandisa JSON neHTTP kubatsira kuderedza mubhadharo.
Raibhurari yeMutengi yakasarudzika ine kodhi yakagadzirwa inofanirwa kushandiswa neMutengi kuwana maSOAP APIs nekuda kwechibvumirano chavo chekutaurirana.
Nekuda kweizvozvo, SOAP inopa diki nhanho yekubvisa pane REST uye yakabatana zvakanyanya nesevha.
Nguva yekushandisa REST?
- Kugadzira maAPI eruzhinji: REST APIs anosarudzwa pakuvaka veruzhinji masevhisi ewebhu nekuti anoonekwa ari nyore kushandisa uye kutora pane SIPO APIs. Pamusoro pezvo, SOAP inopa akati wandei akavakirwa-mukati ekuchengetedza matanho ayo REST asina, kunyangwe aya maitiro asingadikanwi kana uchishanda neakavhurika data uye masevhisi.
- Kugadzira nharembozha: REST yakakwana pakuvaka nharembozha sezvo iri diki, inoshanda, isina nyika, uye cacheable.
- Kushandisa shoma server zviwanikwa uye bandwidth: Zvese zvikumbiro kuREST API zvinofanirwa kunge zvisina chirevo, zvinoreva kuti kudyidzana kwega kwega kwakasiyana uye chikumbiro chega chega uye mhinduro ine data rese rinodiwa kuti upedze kusangana ikoko. Sevha haichengetedze marekodhi ezvikumbiro zvakapfuura sezvo inobata chimwe nechimwe sechikumbiro chitsva. Nekuda kweizvozvo, sevha inoda kurangarira kushoma uye inoshanda nekukasira nekuti chikumbiro hachidi chimwe chiitiko kana kudzoreredza data renhoroondo.
Nguva yekushandisa SIPO?
- Kugadzira zvakavanzika APIs, kunyanya kumabhizinesi makuru: SIPO yakanakira kushandiswa kwemakambani sezvo ichigonesa kuyerera kwedata munzvimbo yakasarudzika, yakagoverwa uye ine akati wandei ekuchengetedza online maficha.
- Kushandisa protocol yekufambisa kunze kweHTTP seyakadzika pasi: SIPO haina kutsamira paHTTP seyakadzika pasi. Zvichienderana nechikumbiro chako, unogona kushandisa SMTP (Simple Mail Transfer Protocol), JMS (Java Messaging Service), kana imwe nzira yekufambisa.
- Kushanda nemamiriro ekushanda: Mukupesana nezvikumbiro zveREST APIs, zvikumbiro zveSOAP API zvine chirevo, zvichireva kuti sevha inochengeta ruzivo nezve mutengi uye inoishandisa pane zvakatevedzana zvikumbiro kana mashandiro. Kunyangwe izvi zvichishandisa yakawanda sevha bandwidth uye zviwanikwa, zvakakosha pakuita maitiro kana zviito zvakabatana, sekufambisa kwebhangi.
mhedziso
Kuenzanisa pakati peREST neSOAP APIs kunoita kuti zvive pachena kuti REST inodiwa kune SOAP. Kunyange zvakadaro, pane mamiriro ezvinhu apo SOAP API inodiwa. Mune zvimwe zviitiko, masevhisi ewebhu anogadzirwa nekubatanidza REST neSOAP API.
Naizvozvo, iyo kesi yekushandisa inozoona kuti ndeipi API maitiro achashanda zvakanyanya.
Leave a Reply