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

    string اختياري

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

  • localPort

    number اختيارية

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

  • الاسم

    string اختياري

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

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

    قيمة منطقية

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

  • ثابتة

    قيمة منطقية

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

  • socketId

    الرقم

    معرّف المقبس

SocketProperties

الخصائص

  • الاسم

    string اختياري

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

  • ثابتة

    قيمة منطقية اختيارية

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

الطُرق

close()

Promise
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

create()

Promise
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

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

المعلمات

  • أماكن الإقامة

    SocketProperties اختيارية

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

  • callback

    function اختياري

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

    (createInfo: CreateInfo) => void

    • createInfo

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

المرتجعات

  • Promise<CreateInfo>

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

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

disconnect()

Promise
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

getInfo()

Promise
chrome.sockets.tcpServer.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    function اختياري

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

    (socketInfo: SocketInfo) => void

    • socketInfo

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

المرتجعات

  • Promise<SocketInfo>

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

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

getSockets()

Promise
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

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

المعلمات

  • callback

    function اختياري

    تظهر المَعلمة 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.

  • قائمة المهام

    number اختيارية

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

  • callback

    دالة

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

    (result: number) => void

    • نتيجة

      الرقم

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

setPaused()

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

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

المعلمات

  • socketId

    الرقم

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

    قيمة منطقية

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

update()

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

يتيح هذا الإذن تعديل خصائص المقبس.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • أماكن الإقامة

    السمات المطلوب تعديلها

  • callback

    function اختياري

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

    () => 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