Furfuraha JWT oo Bilaash ah
Furfur oo baadh JSON Web Token kasta. Arag madaxa, xogta, dhicitaanka, iyo dacwooyinka caadiga ah. Dhammaan waxa si gudaha ah ku socda browser-kaaga β tokens-ku weligood kama baxaan qalabkaaga.
π Token-ka gebi ahaanba waxaa lagu kala fasaxaa browser-kaaga. Waxba looma diro server kasta.
Sida Ay U Shaqeyso
Furihu waa falanqeeye gacan lagu qoray oo eber-ku-tiirsanaan ah oo gebi ahaanba ka shaqeeya biraawsarkaaga: wuxuu ku kala jaraa sumadda dhibcaha, wuxuu u beddelaa qayb Base64URL kasta Base64 caadi ah isagoo isticmaalaya beddel xarig ah wuxuuna ku buul-sareeyaa maalgelin afar leh, kadibna wuxuu wacaa atob() iyo JSON.parse ee biraawsarka dabiiciga ah si uu u soo celiyo shayaasha madaxa iyo payload-ka. Xaqiijinta sumadda ee ikhtiyaarka ah waxay isticmaashaa API-ga Web Crypto (crypto.subtle.verify) β laybreri, server midna ma jiraan.
- 1Furitaanka Base64URLQalabku wuxuu ku kala jaraa JWT-ga labada calaamadood ee dhibcaha, taasoo bixisa saddex qayb. Qayb kastaa waa Base64URL β kaasoo isticmaala - iyo _ halkii + iyo /, wuuna ka tagaa buul-sarreynta. Koodhku wuxuu dib u beddelaa xarfahaas wuxuuna ku buul-sareeyaa calaamado = ah, kadibna wuxuu wacaa atob() ee biraawsarka ku dhex jira si uu u furo bytes-ka.
- 2Falanqaynta JSON iyo soo-saarka claim-kaBytes-ka la furay waxaa loo mariyaa JSON.parse si loo soo saaro shayaasha madaxa iyo payload-ka. Claims-ka diiwaan-gashan ee exp, iat, iyo nbf waxaa loo soo saaraa taariikhaha Unix waxaana loo beddelaa shayaal Date ah; xaaladda dhicitaanka waa dib loo hubiyaa 20 ilbiriqsi kasta via setInterval si token dhici doona intii tab-ku furan yahay uu si toos ah u beddelo sax ilaa dhacay. Taariikhaha la xiriira ('3 maalmood kadib', '2 saacadood ka hor') waxaa loo qaabeeyaa Intl.RelativeTimeFormat isagoo isticmaalaya goobta biraawsarkaaga.
- 3Muuqaalka sumadda iyo xaqiijinta ikhtiyaarka ahXariga sumadda ceyriinka Base64URL ah waxaa la muujiyaa agagaarka madaxa iyo payload-ka. Haddii aad bixiso fure, qalabku wuxuu wacaa crypto.subtle.importKey iyo crypto.subtle.verify si uu si gudaha ah u hubiyo sumadda. Wuxuu aqbalaa qarsoodiyada la wadaago ee HMAC (HS256/384/512), furayaasha dadweynaha RSA ee PEM-encoded (RS256/384/512), iyo furayaasha dadweynaha ECDSA ama shayaasha JWK/JWKS (ES256/384/512) β waxaa go'aamiya goobta alg ee madaxa.
- 4Codsi shabakadeed ma jiraanTallaabo kasta β furitaanka, xisaabta taariikhaha, iyo xaqiijinta cryptographic-ka β waxay ka dhacaan injineerka JavaScript ee biraawsarka gudihiisa. Token-ka iyo fure kasta oo aad gasho weligood kama baxaan aaladdaada.
JWTs badanaa waxay sitaan aqoonsi fadhi, aqoonsiga isticmaalaha, iyo baaxadaha ogolaanshaha; qalabkani wuxuu furaa oo ikhtiyaar ahaan xaqiijiyaa gebi ahaanba biraawsarkaaga isagoo isticmaalaya atob() iyo API-ga Web Crypto, sidaa darteed token-ka ama fure kasta oo aad bixiso midna meel looma diro.
Qalabka La Xiriira
URL Encoder & Codeeyaha
Koode oo deji URL-yada iyo xadhkaha weydiinta. Waxay taageertaa encodeURIComponent, decodeURIComponent, iyo falanqaynta xargaha weydiinta.
Baaraha UUID
Furfur UUID ama ULID kasta β arag noocaisa, variant-kiisa, iyo waqtiga abuuritaanka ku dhex jira v1, v6, v7, iyo ULID-yada. Wuxuu gebi ahaanba ka shaqeeyaa browser-kaaga.
Kod-yeeliyaha & Furfuraha Base64
U beddel qoraal ama faylal Base64, ama u furfur qoraallada Base64 dib ilaa qoraal caadi ah. Degdeg ah, gaar ah, oo bilaash ah.