ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-21, Tuesday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

Webhooks සහ On‑Demand Revalidation මගින් Headless වෙබ් අඩවි තදින් පවත්වා ගැනීම

Webhooks සහ On‑Demand Revalidation මගින් Headless වෙබ් අඩවි තදින් පවත්වා ගැනීම

Static සහ ISR (Incremental Static Regeneration) වෙබ් අඩවි ඉතා වේගවත් වෙන්නේ අන්තර්ගතය cache කර ගැනීම නිසාය. ඒ cache එකයි හේතුවක්, ඔබ CMS එකේ "Publish" බොත්තම ඔබූ පසුත් මුල් පිටුවේ පරණ පුවත් පෙන්වීම. සම්පූර්ණ rebuild එකක් නොකර, සරලව webhook එකක් සකසා API route එකකට සම්බන්ධ කරලා, signature එක verify කර, Next.js හෝ Astro වගේ framework වල on‑demand revalidation (revalidateTag / revalidatePath) කැඳවන්න පුළුවන්.

මෙම ලිපිය NomaCMS වෙතින් ලබාගත් webhook ක්‍රමය පියවරෙන් පියවර විස්තර කරයි. මුලින්ම NomaCMS dashboard එකේ webhook එකක් සකස් කරලා, ඔබේ site එකේ HTTPS URL එකක් (උදා: https://your-site.com/api/revalidate) වෙත POST JSON payload එකක් එවනවා. එම payload එකේ event, project_uuid, timestamp, delivery_id වැනි තොරතුරු අඩංගු. ඔබ සකස් කරපු secret එකක් ඇත්නම්, X-Webhook-Signature header එක HMAC‑SHA256 අකාරයෙන් JSON body එකට සම්බන්ධ කරලා එවෙනවා. ඔබේ handler එක ඉක්මනින් 2xx response එකක් දෙලා, වැඩේ පසුබැසීමෙන් (async) කරන්නේ හොඳයි, නමුත් timeout එක 10 seconds පමණයි.

Next.js වලදී, fetch function එකට tags option එක දීලා cache tag එකක් assign කරලා, webhook එකෙන් එන signal එකට revalidateTag('cms-posts') වගේ function එකක් කැඳවලා, ඒ tag එකට සම්බන්ධ page ගොඩනැගීම අලුත් කරගන්න පුළුවන්. එමෙන්ම revalidatePath('/about') භාවිතා කරලා පූර්ණ path එකක් invalidate කරගන්න පුළුවන්. Astro හෝ Cloudflare Workers වලදීද rebuild hook එකක් configure කරලා, ඒම ක්‍රමය අනුගමනය කළ හැක.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ තාක්ෂණික සංවර්ධනයේ නව තරඟකාරීත්වය සඳහා මෙම ක්‍රමය විශාල වාසියක් ලබා දේ:

  • ඩිවෙලොපර්ලා – සමාන rebuild කාලයක් වැය නොකර, පාරිභෝගික අත්දැකීම ඉක්මනින් නවීකරණය කරගත හැක.
  • ව්‍යාපාරිකයින් – CDN cache එක අඩු කරලා, අධික traffic එකේදීත් site එකේ performance නඩත්තු කරගත හැක.
  • අධ්‍යයන ආයතන – CMS පදනම් වූ e‑learning platforms වල real‑time content update එකක් ලබා දීමට මෙය උපකාරී.
  • ස්ථානීය වෙළෙඳපොළ – නිෂ්පාදන, ප්‍රචාරක, පුවත් පත්‍රිකා වැනි dynamic content සමඟ static site එකේ SEO වාසි රැකගත හැක.

ඉතාම සරල සෙට්‑අප් එකක්, NomaCMS dashboard එකේ “Project Settings → Webhooks” වෙත ගොස්, නම, URL, secret, event subscriptions (content.published, content.updated) ඇතුළත් කිරීම පමණක්. ඒ අනුව ඔබේ Next.js route handler එකේ signature verify කර, අවශ්‍ය tag හෝ path එක revalidate කරලා, cache එක නවීකරණය කරගන්න.

අවසන් වශයෙන්, සම්පූර්ණ rebuild එකක් නොකර, කෙටි API call එකක් මඟින් site එක අලුත් කරගත හැකි බව මතක තබාගන්න. මෙය කාලය, සම්පත්, පරිශීලක අත්දැකීම සම්බන්ධයෙන් ලාභදායී වේ. ඔබේ headless CMS පද්ධතියට webhook + on‑demand revalidation එකක් එක්කරලා, ඉදිරියේදී අඩවි පවත්වා ගැනීමේ පීඩාව අඩු කරගන්න.

💡 ඔබේ වෙබ් අඩවියට webhook සහ on‑demand revalidation එකක් එක්කරන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#Webhooks #Next.js #NomaCMS #Static Sites #Sri Lanka