مشاركة عبر


MessagingError class

يصف الفئة الأساسية لخطأ المراسلة.

يمتد

Error

المنشئون

MessagingError(string, Error)

الخصائص

address

العنوان الذي فشل فيه اتصال الشبكة. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

code

تسمية سلسلة تحدد الخطأ.

errno

رقم الخطأ الذي يوفره النظام. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

info

تفاصيل إضافية حول الخطأ.

name

اسم الخطأ. القيمة الافتراضية: "MessagingError".

port

منفذ اتصال الشبكة غير المتوفر. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

retryable

يصف ما إذا كان الخطأ قابلا لإعادة المحاولة. الافتراضي: صحيح.

syscall

اسم استدعاء النظام الذي أدى إلى ظهور الخطأ. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

الخصائص الموروثة

message
stack
stackTraceLimit

تحدد الخاصية Error.stackTraceLimit عدد إطارات المكدس التي تم تجميعها بواسطة تتبع مكدس (سواء تم إنشاؤها بواسطة new Error().stack أو Error.captureStackTrace(obj)).

القيمة الافتراضية هي 10 ولكن يمكن تعيينها إلى أي رقم JavaScript صالح. ستؤثر التغييرات على أي تتبع مكدس تم التقاطه بعد تغيير القيمة.

إذا تم تعيينها إلى قيمة غير رقمية، أو تم تعيينها على رقم سالب، فلن تلتقط تتبعات المكدس أي إطارات.

الأساليب المتوارثة

captureStackTrace(object, Function)

ينشئ خاصية .stack على targetObject، والتي عند الوصول إليها ترجع سلسلة تمثل الموقع في التعليمات البرمجية التي Error.captureStackTrace() تم استدعاؤها عنده.

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

سيتم مسبوق السطر الأول من التتبع ب ${myObject.name}: ${myObject.message}.

تقبل الوسيطة الاختيارية constructorOpt دالة. إذا تم إعطاؤها، حذف جميع الإطارات أعلاه constructorOpt، بما في ذلك constructorOpt، من تتبع المكدس الذي تم إنشاؤه.

الوسيطة constructorOpt مفيدة لإخفاء تفاصيل التنفيذ لإنشاء الخطأ عن المستخدم. على سبيل المثال،

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
prepareStackTrace(Error, CallSite[])

راجع https://v8.dev/docs/stack-trace-api#customizing-stack-traces

تفاصيل المنشئ

MessagingError(string, Error)

new MessagingError(message: string, originalError?: Error)

المعلمات

message

string

رسالة الخطأ التي توفر المزيد من المعلومات حول الخطأ.

originalError

Error

خطأ سيتم نسخ خصائصه إلى MessagingError إذا تطابقت الخاصية مع خاصية تم العثور عليها في Node.js SystemError.

تفاصيل الخاصية

address

العنوان الذي فشل فيه اتصال الشبكة. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

address?: string

قيمة الخاصية

string

code

تسمية سلسلة تحدد الخطأ.

code?: string

قيمة الخاصية

string

errno

رقم الخطأ الذي يوفره النظام. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

errno?: string | number

قيمة الخاصية

string | number

info

تفاصيل إضافية حول الخطأ.

info?: any

قيمة الخاصية

any

name

اسم الخطأ. القيمة الافتراضية: "MessagingError".

name: string

قيمة الخاصية

string

port

منفذ اتصال الشبكة غير المتوفر. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

port?: number

قيمة الخاصية

number

retryable

يصف ما إذا كان الخطأ قابلا لإعادة المحاولة. الافتراضي: صحيح.

retryable: boolean

قيمة الخاصية

boolean

syscall

اسم استدعاء النظام الذي أدى إلى ظهور الخطأ. موجود فقط إذا تم إنشاء مثيل MessagingError باستخدام Node.js SystemError.

syscall?: string

قيمة الخاصية

string

تفاصيل الخاصية الموروثة

message

message: string

قيمة الخاصية

string

موروثة من خطأ.message

stack

stack?: string

قيمة الخاصية

string

موروث من Error.stack

stackTraceLimit

تحدد الخاصية Error.stackTraceLimit عدد إطارات المكدس التي تم تجميعها بواسطة تتبع مكدس (سواء تم إنشاؤها بواسطة new Error().stack أو Error.captureStackTrace(obj)).

القيمة الافتراضية هي 10 ولكن يمكن تعيينها إلى أي رقم JavaScript صالح. ستؤثر التغييرات على أي تتبع مكدس تم التقاطه بعد تغيير القيمة.

إذا تم تعيينها إلى قيمة غير رقمية، أو تم تعيينها على رقم سالب، فلن تلتقط تتبعات المكدس أي إطارات.

static stackTraceLimit: number

قيمة الخاصية

number

موروث من خطأ.stackTraceLimit

تفاصيل الأساليب المتوارثة

captureStackTrace(object, Function)

ينشئ خاصية .stack على targetObject، والتي عند الوصول إليها ترجع سلسلة تمثل الموقع في التعليمات البرمجية التي Error.captureStackTrace() تم استدعاؤها عنده.

const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

سيتم مسبوق السطر الأول من التتبع ب ${myObject.name}: ${myObject.message}.

تقبل الوسيطة الاختيارية constructorOpt دالة. إذا تم إعطاؤها، حذف جميع الإطارات أعلاه constructorOpt، بما في ذلك constructorOpt، من تتبع المكدس الذي تم إنشاؤه.

الوسيطة constructorOpt مفيدة لإخفاء تفاصيل التنفيذ لإنشاء الخطأ عن المستخدم. على سبيل المثال،

function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
static function captureStackTrace(targetObject: object, constructorOpt?: Function)

المعلمات

targetObject

object

constructorOpt

Function

موروث من Error.captureStackTrace

prepareStackTrace(Error, CallSite[])

راجع https://v8.dev/docs/stack-trace-api#customizing-stack-traces

static function prepareStackTrace(err: Error, stackTraces: CallSite[]): any

المعلمات

err

Error

stackTraces

CallSite[]

المرتجعات

any

موروث من خطأ.prepareStackTrace