Fahanka Qaab-dhismeedka Codsiga Webhook
Codsiyada webhook waa hab muhiim ah oo ay nidaamyada kala duwan xogta ugu gudbiyaan si toos ah. Marka dhacdo ay ka dhacdo nidaamka soo diraha, waxa uu codsi HTTP ah u diraa nidaamka qaataha. Si loo fahmo qaabka saxda ah ee codsiyadan, waxaa lagama maarmaan ah in la baaro qaybaha uu ka kooban yahay codsigu, kuwaas oo kala ah habka, madaxyada, iyo jidhka codsiga (Body).
Qalabka "Kormeeraha Codsiga Webhook" waxa uu kuu ogolaanayaa inaad ku dhejiso habka, madaxyada, iyo jidhka codsiga ee la qabtay si aad u baarto qaab-dhismeedkooda. Tani waxay gacan ka geysaneysaa in la ogaado sida jidhka codsigu u qaabaysan yahay iyo haddii ay jiraan madaxyo gaar ah oo la xiriira saxiixa ama waqtiga la diray.
Doorka Madaxyada ee Isgaarsiinta Webhook
Madaxyada HTTP waxay xambaarsan yihiin macluumaad muhiim ah oo ku saabsan codsiga la soo diray. Waxay qeexaan nooca xogta, aqoonsiga soo diraha, iyo macluumaadka amniga. Markaad isticmaalayso qalabkan, waxaad gelin kartaa madaxyada iyadoo xariiq kasta la dhigayo hal madax oo raacaya qaabka "Name: value".
Xeerarka gelinta madaxyada ee qalabka:
- Xadka xariiqyada: Waxaad gelin kartaa ugu badnaan 200 oo xariiq oo madax ah oo aan eber ahayn. Haddii aad ka badiso, qalabku wuxuu muujinayaa qaladka: "Waxaa jira khadadka madaxa oo aad u badan. Codsiga ku hay 200 oo madax ama ka yar.".
- Xadka xarfaha: Madaxyadu waa inay ka yaraadaan 100,000 oo xaraf. Haddii kale, waxaad arki doontaa qaladka: "madaxyadu aad bay ugu dheer yihiin qalabkan. Ka saar qiyamka aan la xidhiidhin ama soo noqnoqda.".
- Qaabka saxda ah: Xariiq kasta waa inuu u qoran yahay si sax ah. Haddii khad khaldan la geliyo, qalabku wuxuu soo celinayaa qaladka: "
‹line›: Xariiqda madaxa waa mid aan sax ahayn. Isticmaal Magaca: qiimaha.".
Qaababka Jidhka Webhook (JSON iyo URL-encoded)
Jidhka codsiga webhook wuxuu inta badan ku yimaadaa qaabab kala duwan, iyadoo kuwa ugu caansan ay yihiin JSON iyo URL-encoded form data. Qalabkani wuxuu si toos ah u ogaadaa oo uu u qaabeeyaa labadan nooc ee jidhka codsiga. Qaababka kale ee jidhka waxay u haraan sidii qoraal cad.
Markaad gelineyso jidhka codsiga, waa inaad isticmaashaa jidhka saxda ah ee cayriin ee la qabtay ka hor inta aan la kala saarin dhinac server-ka. Jidhka codsigu waa inuu ka yaraadaa 1,000,000 oo xaraf. Haddii xadkaas la dhaafo, qalabku wuxuu soo bandhigayaa qaladka: "Jidhku aad buu ugu dheer yahay qalabkan. Ka dhig in ka yar 1,000,000 xaraf.".
Haddii jidhka la geliyay uu u eg yahay JSON laakiin uu leeyahay khaladaad dhanka dhismaha ah, qalabku wuxuu adeegsadaa JSON.parse si uu u baaro. Maadaama uu dib u nidaamiyo xogta, fogaanta asalka ah (whitespace) iyo habaynta goobaha waa ay lumayaan. Haddii parsing-ku guuldareysto, waxaa soo baxaya qaladka: "Jidhku wuxuu u eg yahay JSON laakiin lama kala saari karo". Sidoo kale, haddii xogta foomka (URL-encoded) ay leedahay khaladaad dhanka baxsashada boqolleyda ah, waxaa soo baxaya qaladka: "Jirka foomku waxa uu ka kooban yahay baxsasho boqolkiiba aan dhamaystirnayn.". Haddii jidhku madhan yahay, wax soo saarku wuxuu muujinayaa "(jidh madhan)".
Tijaabada Deegaanka iyadoo la isticmaalayo cURL
Mid ka mid ah faa'iidooyinka ugu weyn ee kormeerka codsiga webhook waa awoodda loo leeyahay in dib loogu celiyo codsigaas deegaanka horumarinta ee maxalliga ah. Qalabkani wuxuu si toos ah u abuuraa amar cURL oo la koobiyn karo kaas oo u qorshaysan inuu ku dhaco cinwaanka maxalliga ah ee http://localhost:3000/webhooks.
Amarkan cURL ee la soo saaro wuxuu si sax ah u xiganayaa habka, madaxyada, iyo jidhka aad gelisay, isagoo u diyaarinaya qaab deegaanka shell-ka ku habboon. Tani waxay kuu sahlaysaa inaad si dhakhso leh u tijaabiso sida uu nidaamkaaga maxalliga ah u aqbalayo una farsamaynayo codsigaas gaarka ah.
Saxiixyada Webhook iyo Waacyigelinta Amniga
Amniga webhook-yada waxaa inta badan lagu xaqiijiyaa iyadoo la isticmaalayo saxiixyo (signatures) iyo waqtiyo (timestamps) lagu soo diro madaxyada codsiga. Qalabkani wuxuu baaraa madaxyada la geliyay si uu u aqoonsado saxiixyada caanka ah iyo madaxyada waqtiga ee la xiriira.
Qalabku wuxuu aqoonsadaa madaxyadan isagoo eegaya qaababka magacyada sida signature, hmac, digest, iyo magacyada caanka ah ee waqtiga. Haddii la waayo madax ku habboon qaababkan, wax soo saarku wuxuu muujinayaa: "Lama helin saxiix guud ama madaxa timestamp webhook.".
Waxaa muhiim ah in la fahmo farqiga u dhexeeya kormeerka iyo xaqiijinta dhabta ah. Helitaanka goobta saxiixa ma caddaynayso in codsigu yahay mid dhab ah — xaqiijinta dhabta ah waxay u baahan tahay xeerarka saxiixa soo diraha, sirta ama furaha, iyo xogta asalka ah ee codsiga. Qalabkani ma xisaabiyo HMAC, ma fuliyo algorithm, ma hubiyo bytes-ka asalka ah ee payload-ka, mana sameeyo xaqiijin gaar ah oo la xiriirta bixiyaha ama daaqada dib-u-ciyaarista (replay window).
Badbaadada Xogta iyo Farsamaynta
Markaad isticmaalayso qalabkan, xogtaada gaarka ah waa mid la dhowray. Codsigaagii dhejiyay wuxuu ku jirayaa browserkaga BroBroGo ma soo dejiso mana kaydsato. Farsamaynta oo dhami waxay si toos ah uga dhacdaa dhanka macmiilka (browser-ka dhexdiisa), taas oo ka dhigan in aan xogtaada loo dirin server dibadda ah si loo baaro ama loo qaabeeyo.
Su'alaha Badanaa La Isweydiiyo (FAQ)
Boggan ma heli karaa dib u soo celinta webhook toos ah?
Maya. Halkan ku dheji codsi la qabtay si loo baaro. Boggu ma abuuro barta ugu dambaysa ee dadweynaha, ma helo dib-u-soo-warcida ama ma soo diro codsiga imtixaanka la sameeyay.
Qaababka jirka ee webhookkee ayaan kormeeri karaa?
JSON iyo URL-ku lifaaqan qaab-dhismeedka waa la helay oo la habeeyey. Qaybaha kale waxay u ahaanayaan qoraal cad si aanu qalabku u malayn XML, qaybo badan ama waxa ku jira binary.
Helitaanka goobta saxeexa ma caddaynaysaa codsigu inuu sax yahay?
Maya. Qalabku waxa uu kaliya saarayaa saxeexa dusha sare iyo madax-madaxeedyada wakhtiyada la xidhiidha. Xaqiijinta dhabta ah waxay u baahan tahay sharciyeeyaha saxda ah ee saxeexa, sirta ama furaha dadweynaha, iyo codsiga asalka ah bytes.
Maxaa dhacaya haddii aan isku dayo in aan baaro codsi madhan?
Haddii aad gujiso badhanka kormeerka adigoon waxba gelin, qalabku wuxuu soo bandhigayaa qalad ah: "Ku dhaji ugu yaraan hal madax ama hay'ad codsi marka hore.".