A bheil thu airson an aplacaid agad a cheangal ri Facebook gus an urrainn dha puist a ghineadh gu fèin-ghluasadach, no gu Instagram gus an urrainn dhut dealbhan ath-phostadh le hashtags sònraichte?
Dh'fhaodadh tu cuideachd a bhith ag iarraidh bhideothan YouTube a thoirt a-steach don làrach-lìn agad. Leigidh eadar-aghaidh prògramadh tagraidh dhut na gnìomhan sin uile agus barrachd (APIs) a choileanadh.
Faodaidh diofar thagraidhean “bruidhinn” ri chèile ann an dòigh thèarainte is àbhaisteach le taing dha APIan mar an Instagram API, Facebook API, agus YouTube API.
Ann am faclan eile, faodaidh prògram feartan no dàta a thoirt bho phìos bathar-bog eile agus an cleachdadh gus na feartan aige fhèin no eòlas an neach-cleachdaidh a leasachadh. Ach ciamar as urrainn dha aplacaidean na h-iarrtasan sin a dhèanamh, an làimhseachadh, agus freagairt a thoirt dhaibh ann an dòigh a thuigeas daoine eile?
Tha sin an urra ri mar a chaidh an API a chruthachadh. Nuair a bhios tu a’ beachdachadh air dealbhadh API (eadar-aghaidh prògramadh tagraidh), tha e àbhaisteach coimeas a dhèanamh eadar SOAP vs. REST, dhà de na paradigms API as fhollaisiche.
Cho luath ‘s a thàinig APIan SOAP (Pròtacal Ruigsinneachd Rud Sìmplidh) gu bhith na inbhe òir airson companaidhean leithid Oracle, Sun, agus PayPal, bha freagairt co-ionann agus eile ann bliadhna no dhà às deidh sin a dh’ ionnsaigh REST APIs bho Google, Amazon, agus eBay.
Anns an dreuchd seo, nì sinn coimeas agus coimeas eadar SOAP APIs agus REST APIs gus an urrainn dhut co-dhùnadh dè as fheàrr airson na h-adhbharan agad.
Tòisichidh sinn le bhith a’ mìneachadh an API.
Dè a th’ ann an API?
Thathas a’ toirt iomradh air eadar-aghaidh prògramadh tagraidh mar API. Tha APIan gu ìre mhòr nan cruinneachadh de dhòighean agus ghnìomhan a bheir comas do leasachadh aplacaidean. Gheibh iad cothrom air fiosrachadh agus gnìomhan diofar phrògraman, sheirbheisean no shiostaman obrachaidh.
Bidh iad nan seòrsa de neach-meadhain eadar diofar shiostaman bathar-bog. Bidh iad a’ comasachadh “bruidhinn” eadar dà phrògram gun cheangal.
Gabhamaid eisimpleir neach-malairt stoc a tha gu mòr an sàs ann am malairt agus na margaidhean ionmhais. Cruinneachadh de fèin-obrachail an algorithms malairt Faodar a cheangal ris an àrd-ùrlar malairt malairt as fheàrr leis a’ mhalairtiche tro API. Leigidh seo leat fhèin, an neach-malairt, gnothaichean dealanach a chuir an gnìomh no luachan fìor-ùine agus dàta prìsean fhaicinn.
Dè th' ann an REST?
Tha fìor APIan “seirbheisean lìn” a’ toirt a-steach REST (Gluasad Stàite Riochdachail). Tha REST APIs air an togail air URIs (Aithnearan Goireasan Èideadh, le URL na sheòrsa sònraichte), am protocol HTTP, agus an cruth dàta JSON a tha gu math co-chosmhail ri brabhsair.
Dh’ fhaodadh am protocol SOAP, mar a thuirt sinn mu thràth, a bhith air a chleachdadh cuideachd. Faodaidh APIan REST a bhith furasta an cruthachadh agus fàs, ach faodaidh iad a bhith uamhasach agus duilich cuideachd - tha e uile an urra ri mar a thèid an cruthachadh, an leudachadh, agus na tha iad an dùil a dhèanamh.
Tha cuingeadan ghoireasan, riatanasan tèarainteachd nas lugha, co-fhreagarrachd teachdaiche brobhsair, lorg, slàinte dàta, agus so-ruigsinneachd nan adhbharan a bhiodh tu airson API a leasachadh gus a bhith RESTful - rudan a tha dha-rìribh a’ buntainn ri seirbheisean lìn.
Tha REST a’ tabhann roghainn nas aotrom. Bha SOAP duilich a chleachdadh agus trom air mòran luchd-leasachaidh. Mar eisimpleir, le bhith a’ cleachdadh SOAP le JavaScript feumaidh tu tòrr còd a sgrìobhadh gus obair shìmplidh a chrìochnachadh oir feumar an structar XML riatanach a chruthachadh gach turas.
Bidh REST (mar as trice) a’ cleachdadh URL neo-fhillte an àite iarrtas XML. Ged is ann ainneamh a bhios suidheachaidhean ann nuair a dh’ fheumas tu barrachd mion-fhiosrachaidh a thabhann, cha bhith a’ mhòr-chuid de sheirbheisean lìn RESTful a’ cleachdadh ach an dòigh URL.
Faodaidh REST na ceithir gnìomhairean HTTP 1.1 GET, POST, PUT, agus DELETE a chleachdadh gus gnìomhachd a dhèanamh. Eu-coltach ri SOAP, chan fheum REST am freagairt a bhith ann an XML.
Tha seirbheisean lìn stèidhichte air REST a bhios a’ cur a-mach dàta ann an cruthan Command Separated Value (CSV), JavaScript Object Notation (JSON), agus Really Simple Syndication (RSS) ri fhaighinn (RSS).
Is e an t-amas gum faigh thu na toraidhean a dh’ fheumas tu ann an cruth a tha furasta a pharsadh taobh a-staigh a’ chànain a tha thu a’ cleachdadh airson an tagraidh agad.
feartan
- Tha REST a’ cur cuideam air sìmplidheachd os cionn a h-uile càil eile, mar thoradh air protocolaidhean HTTP.
- Tha an lìon as freagarraiche airson REST. Tha e co-chòrdail ri brobhsairean oir tha JSON air a chleachdadh mar an cruth dàta.
- Tha REST ainmeil airson a scalability agus astar air leth.
- Tha ceanglaichean frithealaiche teachdaiche agus ailtireachd air an dèanamh nas ruigsinneach le REST APIs. Ma tha e RESTful, tha e air a thogail a’ cleachdadh a’ mhodail frithealaiche teachdaiche seo, le cuairtean cruinn eadar an dà phàrtaidh a’ dol seachad air luchdan pàighidh dàta.
- Bidh REST APIs a’ cleachdadh eadar-aghaidh àbhaisteach aonaranach. Le bhith a’ dèanamh cinnteach gu bheil a h-uile aplacaid a’ ceangal gu co-ionnan agus tron aon gheata, bidh e a’ sgioblachadh mar a bhios tagraidhean a’ conaltradh ris an API.
Dè th' ann an SOAP?
Tha am protocol aige fhèin, ris an canar SOAP (Pròtacal Ruigsinneachd Rud Sìmplidh), beagan nas iom-fhillte na REST leis gu bheil e a’ sònrachadh barrachd inbhean, a’ toirt a-steach an fheadhainn co-cheangailte ri tèarainteachd agus lìbhrigeadh teachdaireachd.
Tha na gnàthasan gnèitheach sin a’ tighinn le beagan a bharrachd os an cionn. Ach, faodaidh iad a bhith nam feart cinnteach do ghnìomhachasan a dh’ fheumas tèarainteachd nas fharsainge, malairt, agus comasan gèillidh ACID (Atomity, Consistency, Iomallach, Seasmhachd).
Air sgàth a’ choimeas seo, tha e cudromach cuimhneachadh nach ann tric a bhios mòran de bhuannachdan SOAP a’ buntainn ri tagraidhean seirbheisean lìn, gan dèanamh nas freagarraiche airson suidheachaidhean iomairt.
Ìrean tèarainteachd nas àirde (leithid nuair a app gluasadach ag eadar-obrachadh le banca), tha aplacaidean teachdaireachd a dh’ fheumas conaltradh earbsach, eadar-obrachadh le siostaman dìleab, no gèilleadh ACID nam beagan adhbharan a bhiodh tu airson tagradh a dhealbhadh a’ cleachdadh API SOAP.
Tha na comasan teachdaireachd a tha SOAP a’ tabhann gu tur stèidhichte air XML. Chaidh SOAP a chuir an àite seann theicneòlasan nach eil co-chosmhail ris an eadar-lìn leithid am Modail Rud Co-phàirteach Sgaoilte (DCOM) agus Ailtireachd Broker Iarrtas Rud Coitcheann nuair a chaidh a chruthachadh an toiseach le Microsoft (CORBA).
Tha an eisimeil air conaltradh dà-chànanach ag adhbhrachadh gu bheil na siostaman sin a 'fàilligeadh. Thairis air an eadar-lìn, tha teachdaireachdan XML mar an tè a chleachdar le SOAP ag obair nas fheàrr.
feartan
- Tha tèarainteachd SOAP gu math nas teinne. Tha WS-Security na inbhe togte a bheir seachad comasan tèarainteachd a bharrachd aig ìre iomairt SOAP ma tha feum air a bharrachd air taic SSL.
- Reusanachadh soirbheachail / feuchainn air ais airson coileanadh teachdaireachd earbsach. Leis nach eil uidheamachd teachdaireachd àbhaisteach aig REST, chan urrainn dha feuchainn a-rithist ach nuair a dh’ fhailicheas conaltradh. Fiù ‘s nuair a bhios tu a’ cleachdadh eadar-mheadhanan SOAP, tha SOAP a’ tabhann eisimeileachd deireadh-gu-deireadh air sgàth an loidsig shoirbheachail / ath-thòiseachaidh a th’ ann.
- Tha SOAP mu thràth a’ cumail ri inbhean ACID. Le bhith ag òrdachadh mar as urrainn do ghnothaichean eadar-obrachadh leis an stòr-dàta, bidh gèilleadh ACID a’ lughdachadh neo-riaghailteachdan agus a’ dìon cunbhalachd stòr-dàta. Leis gu bheil ACID nas fhaiceallaiche na modalan cunbhalachd dàta eile, bidh e air a chleachdadh gu tric nuair a bhios e a’ riaghladh ghnothaichean mothachail, ge bith an ann ionmhasail no eile.
- Tha e sìmplidh do luchd-prògramaidh a thuigsinn leis gur e conaltradh gu tur stèidhichte air XML a th’ ann an SOAP.
- Tha protocol teachdaireachdan XML na chur ris a’ phròtacal HTTP.
- Faodar conaltradh bho aon choimpiutair gu coimpiutair eile a sgaoileadh tro theachdaireachdan SOAP.
- Faodar ailtireachd frithealaiche teachdaiche a chuir an gnìomh cuideachd. Faodar teachdaireachd protocol SOAP a chleachdadh leis an neach-dèiligidh gus gairm modh-obrach iomallach a ghairm a tha suidhichte ri taobh an fhrithealaiche.
Eadar-dhealachaidhean REST vs SOAP
1. ailtireachd
Tha API gu sònraichte an dùil pàirtean sònraichte de loidsig gnìomhachais tagradh a thaisbeanadh air frithealaiche. Ged a bhios REST a’ cleachdadh URIan airson an aon adhbhar, tha SOAP a’ cleachdadh Eadar-aghaidh Seirbheis airson seo.
Bithear a’ cruthachadh APIan REST às deidh an dàta, ach tha APIan SOAP air an leasachadh às deidh na comasan a tha an API a’ nochdadh. An coimeas ri SOAP, a tha nas stèidhichte air gnìomh, tha REST na dhealbhadh nas stèidhichte air dàta.
2. A ’tàladh
Faodaidh brobhsairean dàta a chaidh a chomharrachadh mar tasgadan a chleachdadh a-rithist gun a bhith ag iarraidh orra iarrtas ùr a chuir chun t-seirbheisiche. Tha sàbhaladh ùine is oidhirp na bhuannachd dha seo.
Cha tèid freagairtean a thasgadh aig ìre HTTP leis gu bheil ceistean SOAP air an cur a-steach tro iarrtasan POST, a tha an inbhe HTTP a’ meas neo-chomasach. Ma tha thu airson caching fhastadh, feumaidh tu fhathast na dòighean riatanach a thogail leis nach eil APIan REST a’ toirt a-steach am buileachadh seo.
3. Goireasan & Bandwidth
Mar thoradh air an gluasad pàighidh pàighidh ann an stoidhle cèis a bhios SOAP a’ cleachdadh, tha àrdachadh beag ann an os cionn, a dh’ fheumas leud-bann a bharrachd. Tha nàdar aotrom REST na bhuannachd anns na suidheachaidhean sin oir tha e air a chleachdadh sa chumantas airson seirbheisean lìn.
4. tèarainteachd
Tha WS-tèarainteachd, a tha SOAP a’ toirt taic agus beagan nas mionaidiche na SSL aig ìre còmhdhail, ion-mhiannaichte. Tha a bhith a’ toirt a-steach ceumannan tèarainteachd ìre iomairt leis cuideachd gu math iomchaidh.
Tha crioptachadh deireadh-gu-deireadh a’ cleachdadh SSL a’ faighinn taic bho gach cuid SOAP agus REST, agus faodaidh REST HTTPS a chleachdadh, an tionndadh tèarainte de phròtacal HTTP.
5. Làimhseachadh Payloads
Thathas a’ toirt iomradh air dàta a thèid a ghluasad tron eadar-lìn mar uallach pàighidh. Feumaidh uallach pàighidh a thathas a’ meas “trom” goireasan a bharrachd. An coimeas ri SOAP, a bhios a’ cleachdadh XML, bidh REST gu tric a’ cleachdadh JSON agus HTTP gus cuideachadh le bhith a’ lughdachadh an eallach pàighidh.
Mar as trice feumaidh an neach-dèiligidh leabharlann sònraichte teachdaiche le còd gineadh a chleachdadh gus faighinn gu SOAP APIs air sgàth a’ chùmhnant conaltraidh a tha gu math teann aca.
Mar thoradh air an sin, tha SOAP a’ tabhann ìre nas lugha de tharraing na REST agus tha ceangal nas dlùithe aige ris an fhrithealaiche.
Cuin a chleachdas tu REST?
- A’ cruthachadh APIan poblach: Is fheàrr le REST APIs airson seirbheisean lìn poblach a thogail oir thathas gam faicinn gu bheil iad nas sìmplidh a chleachdadh agus gabhail riutha na SOAP APIs. A bharrachd air an sin, tha SOAP a’ tabhann grunn cheumannan tèarainteachd togte nach eil aig REST, ged nach eil feum air na feartan sin nuair a bhios tu ag obair le dàta fosgailte agus seirbheisean.
- A 'togail aplacaidean gluasadach: Tha REST foirfe airson tagraidhean gluasadach a thogail leis gu bheil e beag, èifeachdach, gun stàit agus gun tasgadan.
- A’ cleachdadh goireasan frithealaiche gann agus leud-bann: Feumaidh a h-uile iarrtas gu API REST a bhith gun stàit, a tha a’ ciallachadh gu bheil gach eadar-obrachadh air leth agus anns gach iarrtas agus freagairt tha an dàta gu lèir a tha riatanach gus an eadar-obrachadh sin a chrìochnachadh. Cha bhith am frithealaiche a’ sàbhaladh clàran de dh’ iarrtasan a bh’ ann roimhe oir bidh e a’ làimhseachadh gach fear mar iarrtas ùr. Mar thoradh air an sin, tha feum aig an fhrithealaiche fada nas lugha de chuimhne agus bidh e ag obair nas luaithe oir chan fheum iarrtas tuilleadh gnìomh no dàta eachdraidheil fhaighinn air ais.
Cuin a chleachdas tu SOAP?
- A’ cruthachadh APIan prìobhaideach, gu sònraichte airson gnìomhachasan mòra: Tha SOAP foirfe airson tagraidhean corporra leis gu bheil e a’ comasachadh sruthadh dàta ann an àrainneachd sgaoilte, sgaoilte agus tha grunn fheartan tèarainteachd air-loidhne ann.
- A’ cleachdadh protocol còmhdhail a bharrachd air HTTP mar an ìre bhunaiteach: Chan eil SOAP an urra ri HTTP mar an ìre bhunaiteach. A rèir an tagraidh agad, dh’ fhaodadh tu SMTP (Pròtacal Gluasad Post Sìmplidh), JMS (Java Messaging Service), no protocol còmhdhail eile a chleachdadh.
- Ag obair le gnìomhan stàiteil: An coimeas ri iarrtasan gu REST APIs, tha iarrtasan gu SOAP APIan stàiteil, a’ ciallachadh gu bheil am frithealaiche a’ sàbhaladh fiosrachadh mun neach-dèiligidh agus ga chleachdadh thairis air sreath de dh’ iarrtasan no obrachaidhean. Eadhon ged a bhios seo a’ cleachdadh barrachd leud-bann frithealaiche agus goireasan, tha e deatamach airson gnìomhan àbhaisteach no ceangailte a dhèanamh, leithid gluasadan banca.
Co-dhùnadh
Tha an coimeas eadar REST agus SOAP APIs ga dhèanamh gu math follaiseach gu bheil REST nas fheàrr na SOAP. Fiù ‘s fhathast, tha suidheachaidhean ann far a bheil feum air SOAP API. Ann an cuid de shuidheachaidhean, thèid seirbheisean lìn a chruthachadh le bhith a’ cothlamadh REST agus SOAP APIs.
Mar sin, dearbhaidh a’ chùis cleachdaidh dè an stoidhle API a dh’obraicheas as fheàrr.
Leave a Reply