chrome.sockets.tcp

الوصف

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

البيان

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

"sockets"

الأنواع

CreateInfo

الخصائص

  • socketId

    الرقم

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

DnsQueryType

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

إعدادات التحويل باستخدام نظام أسماء النطاقات (DNS) المفضّلة القيمة التلقائية هي any وتستخدم إعدادات نظام التشغيل الحالية التي قد تعرض IPv4 أو IPv6. يفرض ipv4 استخدام IPv4، بينما يفرض ipv6 استخدام IPv6.

Enum

"any"

"ipv4"

"ipv6"

ReceiveErrorInfo

الخصائص

  • resultCode

    الرقم

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

  • socketId

    الرقم

    معرّف المقبس

ReceiveInfo

الخصائص

  • البيانات

    ArrayBuffer

    البيانات المستلَمة، ويبلغ حجمها الأقصى bufferSize.

  • socketId

    الرقم

    معرّف المقبس

SecureOptions

الخصائص

SendInfo

الخصائص

  • bytesSent

    number اختياري

    عدد وحدات البايت المُرسَلة (إذا كانت النتيجة تساوي 0)

  • resultCode

    الرقم

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

SocketInfo

الخصائص

  • bufferSize

    number اختياري

    حجم المخزن المؤقت المستخدَم لتلقّي البيانات إذا لم يتم تحديد حجم المخزن المؤقت بشكل صريح، لن يتم تقديم القيمة.

  • متصل

    قيمة منطقية

    علامة تشير إلى ما إذا كان المقبس متصلاً بجهاز بعيد.

  • localAddress

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

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

  • localPort

    number اختياري

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

  • الاسم

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

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

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

    قيمة منطقية

    علامة تشير إلى ما إذا كان مقبس متصل يمنع الجهاز الآخر من إرسال المزيد من البيانات (راجِع setPaused).

  • peerAddress

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

    إذا كان المقبس الأساسي متصلاً، يحتوي على عنوان IPv4/6 الخاص بالجهاز النظير.

  • peerPort

    number اختياري

    إذا كان المقبس الأساسي متصلاً، يحتوي على منفذ الجهاز الآخر.

  • مستمر

    قيمة منطقية

    علامة تشير إلى ما إذا كان المقبس يظل مفتوحًا عند تعليق التطبيق (راجِع SocketProperties.persistent).

  • socketId

    الرقم

    معرّف المقبس

SocketProperties

الخصائص

  • bufferSize

    number اختياري

    حجم المخزن المؤقت المستخدَم لتلقّي البيانات القيمة التلقائية هي 4096.

  • الاسم

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

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

  • مستمر

    boolean اختياري

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

TLSVersionConstraints

الخصائص

  • الحد الأقصى

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

  • دقيقة

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

    الحدّ الأدنى والأقصى لإصدارات بروتوكول أمان طبقة النقل المقبولة والقيمتان المسموح بإدراجهما هما tls1.2 أو tls1.3.

    لم يعُد بالإمكان استخدام القيمتَين tls1 وtls1.1. إذا تم ضبط min على إحدى هذه القيم، سيتم تقريبها تلقائيًا إلى tls1.2. إذا تم ضبط max على إحدى هذه القيم أو أي قيمة أخرى غير معروفة، سيتم تجاهلها بدون إشعار.

الطُرق

close()

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

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

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

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

    () => void

المرتجعات

  • Promise<void>

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

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

connect()

chrome.sockets.tcp.connect(
  socketId: number,
  peerAddress: string,
  peerPort: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)
: void

يربط المقبس بجهاز بعيد. عند اكتمال عملية connect بنجاح، يتم إنشاء أحداث onReceive عند تلقّي البيانات من الجهاز الآخر. في حال حدوث خطأ في الشبكة أثناء تلقّي وقت التشغيل للحِزم، سيتم إنشاء حدث onReceiveError، ولن يتم إنشاء أي حدث onReceive آخر لهذا المقبس إلى أن يتم استدعاء الطريقة resume.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • peerAddress

    سلسلة

    عنوان الجهاز البعيد تتوفّر أسماء نظام أسماء النطاقات (DNS) وتنسيقات IPv4 وIPv6.

  • peerPort

    الرقم

    منفذ الجهاز البعيد

  • dnsQueryType

    DnsQueryType اختياري

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

    الإعداد المفضّل لتحليل العنوان

  • callback

    دالة

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

    (result: number) => void

    • نتيجة

      الرقم

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

create()

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

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

المعلمات

  • مواقع

    SocketProperties اختيارية

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

  • callback

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

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

    (createInfo: CreateInfo) => void

    • createInfo

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

المرتجعات

  • Promise<CreateInfo>

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

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

disconnect()

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

يؤدي إلى قطع اتصال المقبس.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

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

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

    () => void

المرتجعات

  • Promise<void>

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

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

getInfo()

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

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

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

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

    (socketInfo: SocketInfo) => void

    • socketInfo

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

المرتجعات

  • Promise<SocketInfo>

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

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

getSockets()

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

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

المعلمات

  • callback

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

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

    (socketInfos: SocketInfo[]) => void

    • socketInfos

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

المرتجعات

  • Promise<SocketInfo[]>

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

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

secure()

chrome.sockets.tcp.secure(
  socketId: number,
  options?: SecureOptions,
  callback: function,
)
: void

ابدأ اتصال عميل TLS عبر مقبس عميل TCP المتصل.

المعلمات

  • socketId

    الرقم

    مقبس حالي ومتصل سيتم استخدامه

  • الخيارات

    SecureOptions اختياري

    القيود والمعلمات الخاصة باتصال TLS

  • callback

    دالة

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

    (result: number) => void

    • نتيجة

      الرقم

send()

chrome.sockets.tcp.send(
  socketId: number,
  data: ArrayBuffer,
  callback: function,
)
: void

يرسل البيانات على مقبس TCP المحدّد.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • البيانات

    ArrayBuffer

    البيانات المطلوب إرسالها

  • callback

    دالة

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

    (sendInfo: SendInfo) => void

    • sendInfo

      نتيجة الطريقة send

setKeepAlive()

chrome.sockets.tcp.setKeepAlive(
  socketId: number,
  enable: boolean,
  delay?: number,
  callback: function,
)
: void

تفعيل أو إيقاف وظيفة إبقاء الاتصال نشطًا لاتصال TCP

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • تفعيل

    قيمة منطقية

    إذا كانت القيمة صحيحة، يتم تفعيل وظيفة keep-alive.

  • تأخير

    number اختياري

    اضبط عدد ثواني التأخير بين آخر حزمة بيانات تم استلامها وأول عملية تحقّق من النشاط. القيمة التلقائية هي 0.

  • callback

    دالة

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

    (result: number) => void

    • نتيجة

      الرقم

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

setNoDelay()

chrome.sockets.tcp.setNoDelay(
  socketId: number,
  noDelay: boolean,
  callback: function,
)
: void

يضبط أو يمحو TCP_NODELAY لاتصال TCP. سيتم إيقاف خوارزمية Nagle عند ضبط TCP_NODELAY.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • noDelay

    قيمة منطقية

    في حال ضبطها على "صحيح"، يتم إيقاف خوارزمية Nagle.

  • callback

    دالة

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

    (result: number) => void

    • نتيجة

      الرقم

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

setPaused()

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

يتيح هذا الإذن للتطبيق تلقّي الرسائل من التطبيق النظير أو يمنعه من ذلك. القيمة التلقائية هي "false". يتم عادةً استخدام إيقاف المقبس مؤقتًا من قِبل أحد التطبيقات للحدّ من البيانات التي يرسلها نظيره. عند إيقاف مقبس مؤقتًا، لن يتم إنشاء الحدث onReceive. عندما يتم ربط مقبس وإلغاء الإيقاف المؤقت، يتم إطلاق أحداث onReceive مرة أخرى عند تلقّي الرسائل.

المعلمات

  • socketId

    الرقم

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

    قيمة منطقية

  • callback

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

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

    () => void

المرتجعات

  • Promise<void>

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

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

update()

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

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • مواقع

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

  • callback

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

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

    () => void

المرتجعات

  • Promise<void>

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

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

الفعاليات

onReceive

chrome.sockets.tcp.onReceive.addListener(
  callback: function,
)

الحدث الذي يتم تنشيطه عند تلقّي البيانات لمقبس معيّن

المعلمات

  • callback

    دالة

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

    (info: ReceiveInfo) => void

onReceiveError

chrome.sockets.tcp.onReceiveError.addListener(
  callback: function,
)

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

المعلمات