chrome.sockets.tcpServer

الوصف

استخدِم واجهة برمجة التطبيقات chrome.sockets.tcpServer لإنشاء تطبيقات خادم باستخدام اتصالات TCP. تحلّ واجهة برمجة التطبيقات هذه محلّ وظيفة TCP التي كانت متوفّرة سابقًا في واجهة برمجة التطبيقات chrome.socket.

البيان

يجب الإفصاح عن المفاتيح التالية في ملف البيان لاستخدام واجهة برمجة التطبيقات هذه.

"sockets"

الأنواع

AcceptErrorInfo

الخصائص

  • resultCode

    الرقم

    رمز النتيجة الذي تم إرجاعه من طلب الشبكة الأساسي

  • socketId

    الرقم

    معرّف مقبس الخادم

AcceptInfo

الخصائص

  • clientSocketId

    الرقم

    معرّف مقبس العميل، أي معرّف مقبس الاتصال الذي تم إنشاؤه حديثًا. يجب استخدام معرّف المقبس هذا فقط مع الدوال من مساحة الاسم chrome.sockets.tcp. يُرجى العِلم أنّه يتم إيقاف مقبس العميل مؤقتًا في البداية، ويجب أن يزيل التطبيق الإيقاف المؤقت بشكل صريح لبدء تلقّي البيانات.

  • socketId

    الرقم

    معرّف مقبس الخادم

CreateInfo

الخصائص

  • socketId

    الرقم

    معرّف مقبس الخادم الذي تم إنشاؤه حديثًا. يُرجى العلم أنّ معرّفات المقابس التي تم إنشاؤها من واجهة برمجة التطبيقات هذه غير متوافقة مع معرّفات المقابس التي تم إنشاؤها من واجهات برمجة تطبيقات أخرى، مثل واجهة برمجة التطبيقات [socket](../socket/) المتوقّفة نهائيًا.

SocketInfo

الخصائص

  • localAddress

    سلسلة اختيارية

    إذا كان المقبس يستمع، يحتوي على عنوان IPv4/6 المحلي.

  • localPort

    number اختياري

    إذا كان المقبس يستمع، يحتوي على المنفذ المحلي.

  • الاسم

    سلسلة اختيارية

    سلسلة يحدّدها التطبيق مرتبطة بالمقبس.

  • متوقفة مؤقتًا

    قيمة منطقية

    علامة تشير إلى ما إذا كان يتم إرسال طلبات الاتصال على مقبس الاستماع من خلال الحدث onAccept أو وضعها في قائمة انتظار الاستماع. يمكنك الاطّلاع على setPaused. القيمة التلقائية هي "false".

  • مستمر

    قيمة منطقية

    علامة تشير إلى ما إذا كان المقبس يظل مفتوحًا عند إلغاء تحميل صفحة حدث التطبيق (راجِع SocketProperties.persistent). القيمة التلقائية هي "false".

  • socketId

    الرقم

    معرّف المقبس

SocketProperties

الخصائص

  • الاسم

    سلسلة اختيارية

    سلسلة يحدّدها التطبيق ومرتبطة بالمقبس

  • مستمر

    boolean اختياري

    علامة تشير إلى ما إذا كان المقبس يظل مفتوحًا عند إلغاء تحميل صفحة حدث التطبيق (راجِع إدارة دورة حياة التطبيق). القيمة التلقائية هي "false". عند تحميل التطبيق، يمكن جلب أي مقابس تم فتحها سابقًا باستخدام persistent=true باستخدام getSockets.

الطُرق

close()

الوعد
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

يؤدي هذا الإجراء إلى قطع الاتصال وإيقاف المقبس. يجب إغلاق كل مقبس تم إنشاؤه بعد استخدامه. لم يعُد معرّف المقبس صالحًا بمجرد استدعاء الدالة. ومع ذلك، لا يمكن ضمان إغلاق المقبس إلا عند استدعاء دالة الرجوع.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

create()

الوعد
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

تنشئ هذه الدالة مقبس خادم TCP.

المعلمات

  • مواقع

    SocketProperties اختيارية

    خصائص المقبس (اختيارية)

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (createInfo: CreateInfo) => void

    • createInfo

      نتيجة إنشاء المقبس

المرتجعات

  • Promise<CreateInfo>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

disconnect()

الوعد
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

يؤدي هذا الإجراء إلى قطع اتصال مقبس الاستماع، أي التوقف عن قبول اتصالات جديدة وإلغاء ربط العنوان/المنفذ الذي يرتبط به المقبس. يظلّ معرّف المقبس صالحًا، مثلاً يمكن استخدامه مع listen لقبول الاتصالات على منفذ وعنوان جديدَين.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

getInfo()

الوعد
chrome.sockets.tcpServer.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

تعرض هذه الدالة حالة المقبس المحدّد.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (socketInfo: SocketInfo) => void

    • socketInfo

      عنصر يحتوي على معلومات المقبس.

المرتجعات

  • Promise<SocketInfo>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

getSockets()

الوعد
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

يسترد هذا الإجراء قائمة المقابس المفتوحة حاليًا والتي يملكها التطبيق.

المعلمات

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      مصفوفة من العناصر التي تحتوي على معلومات المقبس

المرتجعات

  • Promise<SocketInfo[]>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

listen()

chrome.sockets.tcpServer.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)
: void

يستمع إلى عمليات الربط على المنفذ والعنوان المحدّدين. إذا كان المنفذ/العنوان قيد الاستخدام، يشير رد الاتصال إلى حدوث خطأ.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • معالجة

    سلسلة

    تمثّل هذه السمة عنوان الجهاز المحلي.

  • المنفذ

    الرقم

    منفذ الجهاز المحلي عند ضبطها على 0، يتم اختيار منفذ مجاني بشكل ديناميكي. يمكن العثور على المنفذ المخصّص ديناميكيًا من خلال استدعاء getInfo.

  • backlog

    number اختياري

    طول قائمة انتظار الاستماع الخاصة بالمقبس تعتمد القيمة التلقائية على نظام التشغيل (SOMAXCONN)، ما يضمن طول قائمة انتظار معقولاً لمعظم التطبيقات.

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (result: number) => void

    • نتيجة

      الرقم

      رمز النتيجة الذي تم إرجاعه من طلب الشبكة الأساسي تشير القيمة السالبة إلى حدوث خطأ.

setPaused()

الوعد
chrome.sockets.tcpServer.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

تتيح هذه السمة أو تمنع مقبس الاستماع من قبول اتصالات جديدة. عند الإيقاف المؤقت، يقبل مقبس الاستماع اتصالات جديدة إلى أن يمتلئ المخزن المؤقت (راجِع الدالة listen)، ثم يرفض طلبات الاتصال الإضافية. لا يتم إنشاء أحداث onAccept إلا عندما يكون المقبس غير متوقف مؤقتًا.

المعلمات

  • socketId

    الرقم

  • متوقفة مؤقتًا

    قيمة منطقية

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

update()

الوعد
chrome.sockets.tcpServer.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

تعديل خصائص المقبس

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • مواقع

    الخصائص المطلوب تعديلها

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 121 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

الفعاليات

onAccept

chrome.sockets.tcpServer.onAccept.addListener(
  callback: function,
)

الحدث الذي يتم تنشيطه عند إنشاء اتصال بمقبس الخادم.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (info: AcceptInfo) => void

onAcceptError

chrome.sockets.tcpServer.onAcceptError.addListener(
  callback: function,
)

يتم تنشيط هذا الحدث عند حدوث خطأ في الشبكة أثناء انتظار وقت التشغيل لاتصالات جديدة على عنوان المقبس والمنفذ. بعد إطلاق هذا الحدث، يتم ضبط المقبس على paused ولن يتم إطلاق المزيد من أحداث onAccept لهذا المقبس إلى أن يتم استئنافه.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (info: AcceptErrorInfo) => void