واجهة زمن التشغيل البرمجية الحدودية في Next.js
< Next.js
تعتمد واجهة زمن التشغيل البرمجية الحدودية Edge Runtime API في Next.js على الواجهة البرمجية Web التي تُستخدم من قبل الأداة الوسطية أو وجهات API الحدودية.
الواجهة البرمجية للشبكة
addEventListenerFetchFetchEventHeadersRequestResponseURLSearchParamsFormDataFileBlob
الواجهة البرمجية للتشفير
TextDecoderTextEncoderatobbtoa
الواجهة البرمجية لنقل البيانات عبر ويب
ReadableStreamReadableStreamBYOBReaderReadableStreamDefaultReaderTransformStreamWritableStreamWritableStreamDefaultWriter
واجهة ويب البرمجية Crypto
cryptoCryptoKeySubtleCrypto
واجهة ويب البرمجية المعيارية
structuredCloneURLPatternWeb Cache
أساسيات المحرّك V8
ArrayArrayBufferAtomicsBigIntBigInt64ArrayBigUint64ArrayBooleanclearIntervalclearTimeoutconsoleDataViewDatedecodeURIdecodeURIComponentencodeURIencodeURIComponentErrorEvalErrorFloat32ArrayFloat64ArrayFunctionInfinityInt8ArrayInt16ArrayInt32ArrayIntlisFiniteisNaNJSONMapMathNumberObjectparseFloatparseIntPromiseProxyRangeErrorReferenceErrorReflectRegExpSetsetIntervalsetTimeoutSharedArrayBufferStringSymbolSyntaxErrorTextDecoderTextEncoderTypeErrorUint8ArrayUint8ClampedArrayUint16ArrayUint32ArrayURIErrorURLURLSearchParamsWeakMapWeakSetWebAssembly
متغيرات البيئة
بإمكانك استخدام الملف process.env للوصول إلى متغيرات البيئة عبر next dev و next build. إنّ تنفيذ التعليمة console.log على process.env لن يعرض جميع متغيرات البيئة، وعليك ان تصل إلى المتغيرات مباشرة كالتالي:
console.log(process.env)
// { NEXT_RUNTIME: 'edge' }
console.log(process.env.TEST_VARIABLE)
// { NEXT_RUNTIME: 'edge', TEST_VARIABLE: 'value' }
الواجهات البرمجية غير المدعومة
- لا تُدعم الواجهة البرمجية الأصلية للغة Node.js، فلن تتمكن من القراءة أو الكتابة إلى منظومة الملفات.
- يمكن استخدام
node_modulesطالما أنها تُنجز باستخدام وحدات ES ولا تستخدم واجهة Node.js البرمجية الأصلية. - لا يُسمح باستدعاء
requireمباشرة، لا بد من استخدام وحدات ES بدلًا منه. - عُطلت ميزات لغة JavaScript التالية:
eval: تقييم شيفرة JavaScript المُمثَّلة كنص.new Function(evalString): إنشاء دالة جديدة من خلال شيفرة قُدمّت كوسيط argument.
المصادر
- الصفحة Edge Runtime من توثيق Next.js الرسمي.