
دنیای زبانهای کدنویسی و توسعه نرمافزار
فایل unauthorized.tsx در Next.js یک ویژگی آزمایشی است که هنگام فراخوانی تابع unauthorized() در فرآیند احراز هویت، رابط کاربری سفارشی را نمایش میدهد. این فایل به شما امکان میدهد پیام ورود یا هشدار عدم دسترسی را برای کاربران غیرمجاز نمایش دهید و بهصورت خودکار کد وضعیت ۴۰۱ را برمیگرداند. این مقاله نحوهٔ استفاده از unauthorized.tsx برای بهبود تجربه کاربری در کنترل دسترسی را آموزش میدهد.
Next.js از conventions خاصی برای تنظیم آیکونهای اپلیکیشن پشتیبانی میکند: favicon، icon و apple-icon. این آیکونها در مرورگر، صفحه اصلی موبایل و نتایج موتور جستجو نمایش داده میشوند. میتوان آنها را با فایلهای تصویری یا بهصورت برنامهنویسی با ImageResponse تولید کرد. این مقاله نحوهٔ استفاده از هر روش، محل قرارگیری فایلها، و تنظیمات متادیتا را توضیح میدهد.
فایل manifest.json یا manifest.webmanifest در Next.js اطلاعات متادیتای اپلیکیشن را برای مرورگرها فراهم میکند. این فایل برای تعریف نام، آیکون، رنگها، و نحوه نمایش اپلیکیشن در حالت PWA استفاده میشود. میتوان آن را بهصورت فایل استاتیک یا با کد در manifest.ts تولید کرد. این مقاله نحوهٔ تعریف، محل قرارگیری، و گزینههای پشتیبانیشده را توضیح میدهد.
Next.js از conventions خاصی برای تولید تصاویر اشتراکگذاری در شبکههای اجتماعی پشتیبانی میکند. با استفاده از فایلهای تصویری یا کد، میتوان برای هر segment از مسیر، تصویر Open Graph یا Twitter تعریف کرد. این تصاویر هنگام اشتراکگذاری لینک در پیامرسانها یا شبکههای اجتماعی نمایش داده میشوند. این مقاله نحوهٔ استفاده از فایلها، تولید تصاویر با ImageResponse، و تنظیم متادیتا را توضیح میدهد.
فایل robots.txt در Next.js مشخص میکند که خزندههای موتور جستجو به کدام مسیرهای سایت شما دسترسی دارند. این فایل را میتوان بهصورت استاتیک یا داینامیک با کد تولید کرد. همچنین میتوان رفتار خزندههای خاص مانند Googlebot یا Bingbot را سفارشیسازی کرد. این مقاله نحوهٔ تعریف فایل، ساختار آن، و تنظیمات پیشرفته را توضیح میدهد.
Next.js از فایل sitemap.xml بهصورت استاتیک یا داینامیک پشتیبانی میکند. این فایل به خزندههای موتور جستجو کمک میکند تا صفحات سایت را بهتر ایندکس کنند. میتوان URLها، تاریخ آخرین تغییر، اولویت، و فرکانس تغییر را مشخص کرد. همچنین امکان تولید نقشهٔ تصاویر، ویدیوها، نسخههای چندزبانه، و تقسیم نقشهٔ سایت به چند فایل وجود دارد. این مقاله تمام روشها و فرمتهای پشتیبانیشده را توضیح میدهد.
nextjs-after-callback-post-response-logging-analytics-server-components
تابع cacheLife در Next.js برای تعیین مدت زمان اعتبار کش یک کامپوننت یا تابع استفاده میشود. این تابع باید همراه با دستور use cache درون همان تابع یا کامپوننت فراخوانی شود. با استفاده از پروفایلهای آماده یا تنظیمات سفارشی، میتوان رفتار کش را برای دادههای لحظهای، روزانه، هفتگی یا پایدار کنترل کرد. این مقاله نحوهٔ استفاده از cacheLife، تفاوتهای stale، revalidate و expire، و مثالهایی از کاربردهای مختلف را توضیح میدهد.
تابع connection در Next.js به شما اجازه میدهد رندر کامپوننت را تا زمان دریافت درخواست واقعی کاربر به تعویق بیندازید. این قابلیت برای دادههایی مانند تاریخ یا عدد تصادفی مفید است که نباید در زمان build تولید شوند. همچنین API کوکیها در Next.js امکان خواندن کوکیها در Server Components و خواندن/نوشتن آنها در Server Actions و Route Handlers را فراهم میکند. این مقاله نحوه استفاده از هر دو قابلیت را با مثالهای کاربردی توضیح میدهد.
تابع draftMode در Next.js امکان فعالسازی یا غیرفعالسازی حالت پیشنویس را فراهم میکند و میتوان بررسی کرد که آیا این حالت فعال است یا نه. API fetch در Next.js با تنظیمات cache، revalidate و tags برای کنترل دقیق کش دادهها گسترش یافته است. همچنین تابع forbidden برای نمایش خطای 403 در صورت عدم مجوز دسترسی استفاده میشود. این مقاله نحوه استفاده از هر سه قابلیت را با مثالهای کاربردی توضیح میدهد.
Next.js ابزارهایی مانند generateImageMetadata، generateSitemaps و generateViewport را برای تولید داینامیک متادیتا فراهم میکند. این قابلیتها به شما اجازه میدهند آیکونها و تصاویر Open Graph را بهصورت برنامهنویسی تولید کنید، نقشههای سایت را بهصورت تقسیمشده بسازید، و تنظیمات نمای صفحه (viewport) را بر اساس پارامترهای مسیر یا شرایط محیطی سفارشیسازی کنید. این مقاله نحوه استفاده از این توابع را با مثالهای کاربردی توضیح میدهد.
تابع generateStaticParams در Next.js برای تولید مسیرهای داینامیک بهصورت استاتیک در زمان build استفاده میشود. این تابع جایگزین getStaticPaths در Pages Router است و به شما اجازه میدهد مسیرهایی مانند [slug] یا [id] را از قبل تولید کنید. همچنین میتوان مسیرهای چندگانه، catch-all، یا مسیرهای وابسته به والد را با این روش مدیریت کرد. این مقاله نحوه استفاده از generateStaticParams را با مثالهای مختلف توضیح میدهد