الوصف
استخدِم واجهة برمجة التطبيقات chrome.sockets.tcp
لإرسال البيانات وتلقّيها عبر الشبكة باستخدام اتصالات TCP. تحلّ واجهة برمجة التطبيقات هذه محلّ وظيفة TCP التي كانت متوفّرة سابقًا في واجهة برمجة التطبيقات chrome.socket
.
البيان
الأنواع
CreateInfo
الخصائص
-
socketId
الرقم
معرّف المقبس الذي تم إنشاؤه حديثًا. يُرجى العلم أنّ معرّفات المقابس التي تم إنشاؤها من واجهة برمجة التطبيقات هذه غير متوافقة مع معرّفات المقابس التي تم إنشاؤها من واجهات برمجة تطبيقات أخرى، مثل واجهة برمجة التطبيقات
[
socket](../socket/)
المتوقّفة نهائيًا.
DnsQueryType
إعدادات التحويل باستخدام نظام أسماء النطاقات (DNS) المفضّلة القيمة التلقائية هي any
وتستخدم إعدادات نظام التشغيل الحالية التي قد تعرض IPv4 أو IPv6. يفرض ipv4
استخدام IPv4، بينما يفرض ipv6
استخدام IPv6.
Enum
"any"
"ipv4"
"ipv6"
ReceiveErrorInfo
الخصائص
-
resultCode
الرقم
رمز النتيجة الذي تم إرجاعه من طلب الشبكة الأساسي
-
socketId
الرقم
معرّف المقبس
ReceiveInfo
الخصائص
-
البيانات
ArrayBuffer
البيانات المستلَمة، ويبلغ حجمها الأقصى
bufferSize
. -
socketId
الرقم
معرّف المقبس
SecureOptions
الخصائص
-
tlsVersion
TLSVersionConstraints اختياري
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
لهذا المقبس.
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(info: ReceiveErrorInfo) => void
-
معلومات
-