Ojú-ìwé ọjà kan sọ pé ó ní API, ìpàdé ìsopọ̀ sì dúró ní ìbéèrè kejì. Iṣẹ́ wo, lórí ohun wo, ta ni ó pè é, àti kí ni a kà sí àṣeyọrí? Ìdáhùn àwọn mẹ́rin yìí kí o tó fi àwọn ọjà wé máa ń yọ ìdajì àwọn olùdíje kúrò. Ó tún sọ ìfiwéra tó kù di ohun tí ìdánwò lè yanjú.

Rọ́pò «ó ní API» pẹ̀lú iṣẹ́ kan

API jẹ́ ọ̀nà gbígbé, kì í ṣe agbára. Ipò ìparí REST, sokẹ́ẹ̀tì àdúgbò àti ìbòrí ìlà àṣẹ lè jẹ́ API, wọn kò sì pèsè àwọn iṣẹ́ tó dọ́gba.

Kọ iṣẹ́ náà gẹ́gẹ́ bí gbólóhùn kí o tó wo ìwé ìtọ́nisọ́nà.

Bíbẹ̀rẹ̀ ìsopọ̀ àdúgbò jẹ́ ìgbésẹ̀ ẹ̀gbẹ́ olùmúlò pẹ̀lú olùmúlò ní iwájú. Ìgbéjáde profáìlì ẹ̀rọ jẹ́ ìgbésẹ̀ ìpèsè pẹ̀lú àkójọ ẹ̀rọ ní ẹ̀yìn. Pípa àǹfààní olùmúlò dé jẹ́ ìgbésẹ̀ ìṣàkóso pẹ̀lú àmì àyẹ̀wò. Àwọn mẹ́ta yìí máa ń gbé nínú àwọn ẹ̀yà ọ̀tọ̀ọ̀tọ̀, tí àwọn ẹgbẹ́ ọ̀tọ̀ọ̀tọ̀ ní, pẹ̀lú àṣẹ ọ̀tọ̀ọ̀tọ̀.

Àwọn pápá mẹ́rin tí ó mú kí àdéhùn lè dánwò

Kún àwọn pápá mẹ́rin fún iṣẹ́ kọ̀ọ̀kan: ohun, ìgbésẹ̀, ẹni tí ó pè àti ipò àṣeyọrí. Àdéhùn tí pápá kan kù jẹ́ ìfẹ́ lásán.

Tábìlì ni gbogbo ìwé iṣẹ́:

FieldQuestionExample
ObjectWhat is being acted on?One enrolled device
ActionObserve, create, change, start, stop, or revoke?Revoke
CallerWhich identity calls it?Deployment service
SuccessWhat observable state proves it?Future sign-in denied

Ipò àṣeyọrí ni pápá tí àwọn ènìyàn máa ń fò ó, òun ni ó sì ń pinnu bóyá ìsopọ̀ ń ṣiṣẹ́. Ètò tí a fi pamọ́ kì í ṣe ọ̀nà abẹ́lẹ̀ tó ń ṣiṣẹ́, àti àkọsílẹ̀ tí a ti dí kì í ṣe ìpàdé tó ti parí.

Tí iṣẹ́ méjì bá nílò àwọn olùpè ọ̀tọ̀ọ̀tọ̀, ìsopọ̀ méjì ni wọ́n. Sísopọ̀ wọn sínú àkọsílẹ̀ iṣẹ́ kan máa ń túmọ̀ sí fífúnni ní àṣẹ tó pọ̀ ju ohun tí ẹnìkọ̀ọ̀kan nílò lọ.

Bá ìlà-ìsopọ̀ mu pẹ̀lú ìpele tí ó jẹ́ tirẹ̀ ní ti gidi

OpenVPN àwùjọ ìlà-ìsopọ̀ ìṣàkóso ń bá daemon sọ̀rọ̀ nípasẹ̀ TCP tàbí sokẹ́ẹ̀tì Unix. Àwọn àṣẹ rẹ̀ ní àkíyèsí ipò àti àwọn àmì sí daemon.

Èyí máa ń sọ ọ́ di ọ̀nà ìṣàkóso daemon, kì í ṣe API ìforúkọsílẹ̀ tí a gbà àlejò tàbí iṣẹ́ ìforúkọsílẹ̀ olùmúlò. Kíkà ìwé rẹ̀ pẹ̀lú àfiyèsí máa ń gbà ọ́ lọ́wọ́ kíkọ́ lórí ìpele tí kò ní ohun náà.

Ìwé yẹn tún sọ pé ètò náà kò ní ìkọ̀kọ̀ tirẹ̀. Ẹnikẹ́ni tí ó bá lè dé sokẹ́ẹ̀tì lè ṣàkóso daemon, nítorí náà kà á sí ìṣàkóso àkànse, kì í ṣe ìṣàn ìwọ̀n. So ó mọ́ loopback tàbí sokẹ́ẹ̀tì Unix, kí o sì gbé e sẹ́yìn ètò ààlà tí ó bá jẹ́ pé olùpè ònà jìnnà nílò rẹ̀. Fífi í hàn sí íńtánẹ́ẹ̀tì fún ìrọ̀rùn máa ń sọ ọ̀nà ìṣàkóso di ìṣẹ̀lẹ̀.

Sọ ìhùwàsí lẹ́yìn ìpè

Gbígba kì í ṣe parí. Daemon lè padà kí ọ̀nà abẹ́lẹ̀ tó gòkè, nítorí náà dúró de ìṣẹ̀lẹ̀ parí tàbí ìkùnà tí a kọ sílẹ̀ kí o sì so ó mọ́ ìbéèrè tí o rán.

Pinnu ohun tí olùpè yóò ṣe bí ìdáhùn bá sọnù. Àtúnṣe àìfojúrí ìdá tàbí ìsopọ̀ tún kì í ṣe ìyẹ̀wò bóyá ìbéèrè àkọ́kọ́ ti ní ipa tẹ́lẹ̀.

Yíyọ àǹfààní kúrò jẹ́ ó kéré tán ìgbésẹ̀ mẹ́ta ọ̀tọ̀ọ̀tọ̀: dídí ìwọlé ọjọ́ iwájú, pípa ìpàdé tó ń ṣiṣẹ́ àti fífagilé ẹ̀rí. Béèrè àwọn tí ìlànà nílò ní ti gidi, kí o sì sọ nínú àdéhùn èwo ni èwo. Má ṣe pe ìmúdójúìwọ̀n àkọsílẹ̀ kan tó ṣàṣeyọrí ní fífagilé pátápátá láìsí ẹ̀rí. Ìyàtọ̀ yìí ṣe pàtàkì nígbà ìṣẹ̀lẹ̀, nígbà tí aago ń lọ.

Ṣàyẹ̀wò àdéhùn pẹ̀lú àpilẹ̀kọ kékeré

Àpilẹ̀kọ kékeré tí a fọwọ́ sí gbọ́dọ̀ bo àṣeyọrí, ìkọ̀, ìdádúró àti àtúnṣe, lẹ́yìn náà iṣẹ́ ohun-èlò tí ó yẹ kí a gbà tàbí kọ̀.

Fún ìlà-ìsopọ̀ ìpele daemon, àṣẹ méjì ń dán àkíyèsí àti àmì wò:

echo state | nc -w 2 127.0.0.1 7505
echo signal SIGTERM | nc -w 2 127.0.0.1 7505

Fún ní àṣẹ tí iṣẹ́ nílò nìkan. Pa àwọn àṣírí mọ́ kúrò nínú àwọn àkọsílẹ̀ ojoojúmọ́, kí o sì kọ àlàyé àdáni tó tó láti sọ irú ibi tí ó kàn àti bí ó ti parí.

Kọ ọ̀nà ìmúpadàbọ̀ fún ipò tí API ìṣàkóso fúnra rẹ̀ bá ṣubú. Yan ìlà-ìsopọ̀ tí ó ní ohun àti ìgbà ayé rẹ̀; àwọn ẹ̀sùn ìṣiṣẹ́ aládàáṣiṣẹ́ lórí ojú-ìwé ọjà kì í ṣe àròpo.

Àwọn àpilẹ̀kọ tó jọra