مقداردهی و کار با سربرگ‌های NEL در HTTP

http headers nel
11 آذر 1403

شاید تا به حال برای شما پیش آمده باشد که در حین کار با سرویس‌های وب و API‌ها با مشکلاتی مواجه شده باشید که تشخیص علت آن‌ها دشوار باشد. در دنیای وب، سربرگ‌های HTTP یکی از ابزارهایی هستند که به ما کمک می‌کنند تا اطلاعات مهمی را انتقال دهیم و مشکلات را تشخیص دهیم. سربرگ NEL (Network Error Logging) نیز یکی از این ابزارهاست که به توسعه‌دهندگان کمک می‌کند تا خطاهای شبکه را به طور مفصل تری ردیابی و گزارش کنند.

سربرگ NEL امکان ثبت و گزارش خطاهای شبکه را فراهم می‌کند، به طوری که اطلاعات دقیق‌تری از خطاهای رخ داده در سمت کاربر به سمت سرور ارسال می‌شود. این سربرگ به برنامه‌نویسان کمک می‌کند تا مشکلات پیچیده را بهتر درک کنند و برای بهبود تجربه کاربری اقدامات لازم را انجام دهند.

ساختار سربرگ NEL

سربرگ NEL از یک JSON استفاده می‌کند که شامل جزئیات دقیق‌تری از نحوه و زمان گزارش خطاهاست. در این ساختار می‌توانید مشخص کنید که کدام خطاها باید گزارش شوند و به کجا ارسال شوند.

مثالی از ساختار کد برای مقداردهی و استفاده از سربرگ NEL به صورت زیر است:


fetch('https://api.example.com/data', {
  method: 'GET',
  headers: {
    'Content-Type': 'application/json',
    'NEL': '{ "report_to": "endpoint", "max_age": 2592000, "failure_fraction": 1.0 }'
  }
});

توضیح کد خط به خط

fetch('https://api.example.com/data', {
در این خط، تابع fetch برای ارسال یک درخواست GET به URL مشخص استفاده می‌شود.

method: 'GET',
این گزینه نشان می‌دهد که نوع درخواست HTTP از نوع GET است.

headers: {
در این بخش، سربرگ‌های HTTP مشخص می‌شوند.

'Content-Type': 'application/json',
نوع محتوای درخواست را مشخص می‌کند که در اینجا JSON است.

'NEL': '{ "report_to": "endpoint", "max_age": 2592000, "failure_fraction": 1.0 }'
سربرگ NEL را مقداردهی می‌کند که شامل تنظیمات گزارش خطاها مانند آدرس مقصد گزارش‌ها، مدت زمان معتبر بودن، و درصد وقوع خطاها است.

}
پایان قسمت سربرگ‌ها.

});
پایان تابع fetch.

سوالات متداول

؟

NEL چیست و چه کاربردی دارد؟

؟

چگونه می‌توان از سربرگ NEL استفاده کرد؟