Garaad
    Koorsooyinkabilaash
    Bulshada
    Blog
    Soo gal
    ๐Ÿ’ฌWhatsAppTwitter / X
    Dhammaan Qoraalada
    Garaad

    Sidee loo ku daraa Authentication (JWT) API-gaaga Node.js ah

    ๐Ÿ’ฌWhatsAppTwitter / X
    A
    abdishakuur ali mohamed
    ยท
    Abriil 21, 2026
    ยท
    4 daqiiqo
    Sidee loo ku daraa Authentication (JWT) API-gaaga Node.js ah

    Waxaad dhisatay REST API. Waxaadna baahisay Render ama Railway. Postman baad ku tijaabisay โ€” shaqeeyeen. Laakiin waxaa jirta dhibaato kale oo muhiim ah: API-gaagu wan-xor yahay. Qof kasta oo link-ka haya wuxuu aqbali karaa xogta. Taas ma aha xal.

    Marka la daro authentication, adigu ayaad abuuri doontaa nidaam u sheegaya qofkiiba: "tani waa mid la ogolaado, tana ma ogolaado." JWT (JSON Web Token) ayaa ah qaabka ugu fudud, ugu baahsan, ee loo sameeyo taas. Ma u baahno database gaar ah, ma u baahno session server, wuuna fududahay marka la baahiyo.

    Qoraalkan ka dib, waxaad heli doontaa: API u baahan token si loo galo, password si ammaan ah loo kaydiyo, iyo route kasta oo ilaashanaysa xogta gaarka ah.

    Qeybtii 1aad โ€” JWT waa maxay?

    JWT waa fariin yar oo la saxiixay. Markaad user-ku login gareyso, server-ku wuxuu soo noqdaa token โ€” xarafyo dheer oo encrypted ah. Token-kaas waxaad ku xidataa header-ka codsi kasta oo dambe, server-kuna wuxuu ku xaqiijiyaa: "haa, qofkan sax yahay."

    Moodaaladii hore, sessions waa la isticmaalay โ€” server-ku wuxuu xusuustaa user kasta. JWT waa kala-fog: server-ka aad buu u fududahay sababtoo ah xusuus uma baahno โ€” token-ka qudhiisu wuxuu xukumaa. Haddaad API baahisay cloud-ka, JWT baa munaasib.

    JWT wuxuu ka kooban yahay saddex juz': Header (nooca token-ka), Payload (xogta user-ka), iyo Signature (saxiixa ammaan). Saddexdooduba base64 ayaa lagu qabiyaa oo dot (.) ayaa u dhaxeeya. Markaad token-ka furtid, adigu ka dib waxaad arki doontaa macluumaadka user-ka โ€” laakiin haddaad wax ka beddesho, signature-ku kufurta.

    Qeybtii 2aad โ€” Dejinta iyo Aasaaska

    Billow node project haddaadan haysan, markaas ku dar packages-ka muhiimka ah:

    npm install express jsonwebtoken bcryptjs dotenv

    Express waa server-kaaga, jsonwebtoken wuxuu JWT sameeya oo xaqiijiyaa, bcryptjs wuxuu password-ka hash-gareeyaa, dotenv wuxuu siraha .env ka saara oo koodhka kuma darin. Ku samee file .env oo ku qor: JWT_SECRET=garaad_super_secret_2026_xor_la_leh

    Qor route-ka /register: qaado email iyo password, password-ka bcrypt ku hash-garee, user-ka database ku kaydi. Markaas qor /login: email iyo password hubi, haddii sax yihiin jwt.sign() ku samee token, token-ka client-ka u dir. Tan ka dib user-ku token hayaa โ€” wuxuuna u isticmaalaa calls-ka xiga.

    Qeybtii 3aad โ€” Routes-ka Ilaalinta (Middleware)

    Middleware waa shaqo ku taallaa dhexda codsi iyo route. Waxaad u isticmaashaa si aad u xaqiijiso token kahor intaan user-ku helinin xogo gaarka ah.

    Samee file middleware/auth.js. Middleware-ku wuxuu ka qaadaa token-ka header-ka โ€” caadiga ahaan sidan: Authorization: Bearer eyJhbGci... โ€” markaas wuxuu ku xaqiijiyaa JWT_SECRET. Haddii token-ku sax yahay, wuxuu user-ka xogta ku daraa req.user oo wuxuu u gudbiyaa route-ka xiga. Hadduu been yahay ama dhaminjiray, 401 Unauthorized ayuu soo celiyaa.

    Ku dar middleware-ka routes-kaaga gaarka ah markaas: router.get('/profile', authMiddleware, getProfile). Taas ka dib, route-kaas ma furin karo qof aan token hayn. Tijaabi Postman: GET /profile iyada oo aan token laheyn โ€” 401. Token la jiro, xogta ayaad heshaa. Waa nidaam fudud oo xoog badan.

    Qeybtii 4aad โ€” Khaladaadka Caadiga ah

    Khaladka ugu badan: JWT_SECRET-ka lagaga dhiga string fudud sida "123" ama "secret". Tani waa khataraha weyn โ€” qof kasta oo server-kaaga wax ka og wuu xadi karaa tokens-kaaga. Isticmaal ugu yaraan 32 xaraf oo random ah, environment variable si ammaan ah ayuu u ah.

    Khalad labaad: token-ka laga dhigaa mid aan waligiis dhamin. JWT-ga waxaa lagu dari karaa expiresIn: '7d' โ€” toddobo maalmood ka dib, user-ku waa dib u gali karaa. Taas waxay xadidaysaa khatarta haddii token la xado: khasaare waqti-xaddidan buu leeyahay, ma aha mid aan dhammaanin.

    Khalad saddexaad: error messages-ka la faahfaahinayo si aad u sheegto "Token-kaagu waa been" ama "User-ku ma jiro." Ha siinin macluumaad gaar ah โ€” orod kaliya "Unauthorized." Sida albaab xidnaa: "ma geli kartid" kalaa ka sheegi doontaa, ma ahayne sababta faahfaahsan ee albaabka loogu xidnaa.

    Xiriirka Garaad โ€” Dhismo Wax Dhab ah

    Authentication waa mid ka mid ah qaybaha asaasiga ee backend developer kasta oo xirfadlayaanka ah laga sugayo. Haddaad dhisatay REST API, haddaadna baahisay โ€” tallaabada xiga waa inaad ku darto login nidaam dhabta ah. Kaas baad ku darsanaysaa Garaad.

    Garaad waxay kuu baraysa sida loo dhiso full-stack apps dhabta ah: frontend, backend, database, authentication, iyo deployment โ€” dhammaantoodna Af Soomaali. Ma ahan casharada shabakada ee generic โ€” waa mashquuliyad, codsi, iyo farsamayn gaar ahaan loogu talagalay dhalinyarada Soomaaliyeed.

    Bilow maanta: garaad.org

    Backend developer noqoshadu kuma koobna in la xafido syntax-ka โ€” waa in la fahmaa waxa ka dambeeyaa koodkaaga. API ammaan ah waa bilowga. Hada bilow.

    GaraadNode.jsWeb Developmentfullstacksomali developersapibackendjwtauthenticationsecurity

    La wadaag

    ๐Ÿ’ฌWhatsAppTwitter / X
    Lagu soo gaaray 20 April

    Shaqo tech ah raadsanaysaa?

    Challenge-ka Garaad wuxuu kugu siinayaa xirfad, mashruuc dhab ah, iyo taageero mentor 3 bilood gudahood.

    Gal Challenge-ka โ†’View Pricing

    Ka hel qoraalada cusub

    Isdiiwaangeli bilaash โ€” waxaan kuugu soo diri karnaa ogeysiisyada muhiimka ah (email).

    Isdiiwaangeli bilaash โ†’
    A

    abdishakuur ali mohamed

    Abdishakuur wuxuu baraa Full-Stack development oo Soomaali ah โ€” haddii aad rabto inaad hesho wadada buuxda, eeg Challenge-ka.

    Bilow Challenge โ†’

    Qoraalada La Xiriira

    Akhri: Sidee loo Baahshaa API-gaaga Node.js Bilaash ah โ€” Render, Railway & Waxa Dhab ahaan u Shaqeeya
    3 daqiiqo
    Garaad
    Sidee loo Baahshaa API-gaaga Node.js Bilaash ah โ€” Render, Railway & Waxa Dhab ahaan u Shaqeeya

    Sidee loo Baahshaa API-gaaga Node.js Bilaash ah โ€” Render, Railway & Waxa Dhab ahaan u Shaqeeya

    A
    abdishakuur ali mohamed
    Akhri: Sidee Loo Dhisaa REST API Node.js + Express
    4 daqiiqo
    Garaad
    Sidee Loo Dhisaa REST API Node.js + Express

    Sidee Loo Dhisaa REST API Node.js + Express

    A
    abdishakuur ali mohamed

    Challenge-ka โ€” boosyo xaddidan

    Ku biir โ†’

    Related Resources

    Continue learning with these resources related to this post.

    Free Programming CoursesStart Learning JourneyAll Blog PostsAbout GaraadGaraad ArticlesNode.js ArticlesWeb Development Articles

    Garaad

    STEM iyo Full-Stack โ€” ku baro af Somali.

    KoorsooyinkaBlogCareersAragtida ardaydaKu saabsanArrimaha Khaaska ahShuruudaha

    ยฉ 2026 Garaad. Xuquuqda oo dhan waa dhowran tahay.