chrome.sockets.tcp

توضیحات

از API مربوط به chrome.sockets.tcp برای ارسال و دریافت داده‌ها از طریق شبکه با استفاده از اتصالات TCP استفاده کنید. این API جایگزین قابلیت TCP که قبلاً در chrome.socket API وجود داشت، می‌شود.

مانیفست

برای استفاده از این API، کلیدهای زیر باید در مانیفست تعریف شوند.

"sockets"

انواع

CreateInfo

خواص

  • شناسه سوکت

    شماره

    شناسه‌ی سوکت تازه ایجاد شده. توجه داشته باشید که شناسه‌های سوکت ایجاد شده از این API با شناسه‌های سوکت ایجاد شده از سایر APIها، مانند API منسوخ شده‌ی [ socket ](../socket/) سازگار نیستند.

DnsQueryType

کروم ۱۰۳+

تنظیمات DNS resolution. پیش‌فرض any است و از پیکربندی فعلی سیستم عامل استفاده می‌کند که ممکن است IPv4 یا IPv6 را برگرداند. ipv4 IPv4 را اعمال می‌کند و ipv6 IPv6 را.

شمارشی

"هر"

"آی‌پی‌وی۴"

"آی‌پی‌وی۶"

ReceiveErrorInfo

خواص

  • کد نتیجه

    شماره

    کد نتیجه‌ای که از فراخوانی شبکه‌ی مربوطه برگردانده شده است.

  • شناسه سوکت

    شماره

    شناسه سوکت.

ReceiveInfo

خواص

  • داده‌ها

    آرایه بافر

    داده‌های دریافتی، با حداکثر اندازه bufferSize .

  • شناسه سوکت

    شماره

    شناسه سوکت.

SecureOptions

خواص

SendInfo

خواص

  • بایت‌های ارسالی

    شماره اختیاری

    تعداد بایت‌های ارسالی (اگر نتیجه == 0 باشد)

  • کد نتیجه

    شماره

    کد نتیجه‌ای که از فراخوانی شبکه‌ی اصلی برگردانده می‌شود. مقدار منفی نشان‌دهنده‌ی خطا است.

SocketInfo

خواص

  • اندازه بافر

    شماره اختیاری

    اندازه بافر مورد استفاده برای دریافت داده‌ها. اگر اندازه بافر به صراحت مشخص نشده باشد، مقدار آن ارائه نمی‌شود.

  • متصل

    بولی

    پرچمی که نشان می‌دهد آیا سوکت به یک همتای راه دور متصل است یا خیر.

  • آدرس محلی

    رشته اختیاری

    اگر سوکت زیرین متصل باشد، شامل آدرس IPv4/6 محلی آن است.

  • بندر محلی

    شماره اختیاری

    اگر سوکت زیرین متصل باشد، شامل پورت محلی آن نیز می‌شود.

  • نام

    رشته اختیاری

    رشته تعریف شده توسط برنامه که با سوکت مرتبط است.

  • مکث کرد

    بولی

    پرچمی که نشان می‌دهد آیا یک سوکت متصل، مانع از ارسال داده‌های بیشتر توسط همتای خود می‌شود یا خیر (به setPaused مراجعه کنید).

  • آدرس همتا

    رشته اختیاری

    اگر سوکت زیرین متصل باشد، شامل آدرس نظیر/IPv4/6 خواهد بود.

  • همتاپورت

    شماره اختیاری

    اگر سوکت زیرین متصل باشد، شامل پورت همتا می‌شود.

  • مداوم

    بولی

    پرچمی که نشان می‌دهد آیا سوکت هنگام تعلیق برنامه باز مانده است یا خیر (به SocketProperties.persistent مراجعه کنید).

  • شناسه سوکت

    شماره

    شناسه سوکت.

SocketProperties

خواص

  • اندازه بافر

    شماره اختیاری

    اندازه بافر مورد استفاده برای دریافت داده‌ها. مقدار پیش‌فرض ۴۰۹۶ است.

  • نام

    رشته اختیاری

    یک رشته تعریف‌شده توسط برنامه که با سوکت مرتبط است.

  • مداوم

    بولی اختیاری

    پرچمی که نشان می‌دهد آیا سوکت هنگام تخلیه صفحه رویداد برنامه باز مانده است یا خیر ( به مدیریت چرخه عمر برنامه مراجعه کنید). مقدار پیش‌فرض "false" است. هنگامی که برنامه بارگیری می‌شود، هر سوکتی که قبلاً با persistent=true باز شده باشد، می‌تواند با getSockets بازیابی شود.

TLSVersionConstraints

خواص

  • حداکثر

    رشته اختیاری

  • دقیقه

    رشته اختیاری

    حداقل و حداکثر نسخه‌های قابل قبول TLS. مقادیر پشتیبانی شده tls1.2 یا tls1.3 هستند.

    مقادیر tls1 و tls1.1 دیگر پشتیبانی نمی‌شوند. اگر min روی یکی از این مقادیر تنظیم شود، به طور بی‌صدا روی tls1.2 تنظیم می‌شود. اگر max روی یکی از این مقادیر یا هر مقدار ناشناخته دیگری تنظیم شود، به طور بی‌صدا نادیده گرفته می‌شود.

روش‌ها

close()

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

سوکت را می‌بندد و آدرس/پورتی را که سوکت به آن متصل است، آزاد می‌کند. هر سوکت ایجاد شده باید پس از استفاده بسته شود. شناسه سوکت به محض فراخوانی تابع، دیگر معتبر نیست. با این حال، تضمین می‌شود که سوکت فقط زمانی بسته شود که فراخوانی برگشتی فراخوانی شود.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

connect()

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

سوکت را به یک ماشین از راه دور متصل می‌کند. هنگامی که عملیات connect با موفقیت انجام شود، رویدادهای onReceive هنگام دریافت داده‌ها از طرف دیگر اجرا می‌شوند. اگر در حین دریافت بسته‌ها در زمان اجرا، خطای شبکه رخ دهد، یک رویداد onReceiveError اجرا می‌شود که در آن زمان دیگر هیچ رویداد onReceive برای این سوکت اجرا نمی‌شود تا زمانی که متد resume فراخوانی شود.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس همتا

    رشته

    آدرس دستگاه راه دور. نام DNS، فرمت‌های IPv4 و IPv6 پشتیبانی می‌شوند.

  • همتاپورت

    شماره

    پورت دستگاه از راه دور.

  • نوع پرس‌وجوی dns

    نوع DnsQuery اختیاری

    کروم ۱۰۳+

    اولویت تفکیک آدرس.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

      کد نتیجه‌ای که از فراخوانی شبکه‌ی اصلی برگردانده می‌شود. مقدار منفی نشان‌دهنده‌ی خطا است.

create()

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

یک سوکت TCP ایجاد می‌کند.

پارامترها

  • خواص

    SocketProperties اختیاری است

    ویژگی‌های سوکت (اختیاری).

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (createInfo: CreateInfo) => void

بازگشت‌ها

  • کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

disconnect()

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

سوکت را جدا می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getInfo()

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

وضعیت سوکت داده شده را بازیابی می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (socketInfo: SocketInfo) => void

بازگشت‌ها

  • قول< SocketInfo >

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

getSockets()

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

فهرست سوکت‌های بازِ در حال حاضر متعلق به برنامه را بازیابی می‌کند.

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    (socketInfos: SocketInfo[]) => void

    • اطلاعات سوکت

      آرایه‌ای از اشیاء که حاوی اطلاعات سوکت هستند.

بازگشت‌ها

  • قول< SocketInfo []>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

secure()

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

یک اتصال کلاینت TLS را از طریق سوکت کلاینت TCP متصل آغاز کنید.

پارامترها

  • شناسه سوکت

    شماره

    سوکت متصل موجود برای استفاده.

  • گزینه‌ها

    SecureOptions اختیاری

    محدودیت‌ها و پارامترهای اتصال TLS.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

send()

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

داده‌ها را روی سوکت TCP داده شده ارسال می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • داده‌ها

    آرایه بافر

    داده‌ای که باید ارسال شود.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (sendInfo: SendInfo) => void

setKeepAlive()

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

قابلیت keep-alive را برای اتصال TCP فعال یا غیرفعال می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • فعال کردن

    بولی

    اگر درست باشد، قابلیت keep-alive را فعال کن.

  • تأخیر

    شماره اختیاری

    ثانیه‌های تأخیر بین آخرین بسته داده دریافتی و اولین کاوشگر keepalive را تنظیم کنید. مقدار پیش‌فرض ۰ است.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

      کد نتیجه‌ای که از فراخوانی شبکه‌ی اصلی برگردانده می‌شود. مقدار منفی نشان‌دهنده‌ی خطا است.

setNoDelay()

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

TCP_NODELAY برای یک اتصال TCP تنظیم یا پاک می‌کند. الگوریتم Nagle هنگام تنظیم TCP_NODELAY غیرفعال خواهد شد.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • بدون تأخیر

    بولی

    اگر درست باشد، الگوریتم ناگل را غیرفعال می‌کند.

  • تماس برگشتی

    تابع

    پارامتر callback به شکل زیر است:

    (result: number) => void

    • نتیجه

      شماره

      کد نتیجه‌ای که از فراخوانی شبکه‌ی اصلی برگردانده می‌شود. مقدار منفی نشان‌دهنده‌ی خطا است.

setPaused()

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

برنامه را از دریافت پیام از همتای خود فعال یا غیرفعال می‌کند. مقدار پیش‌فرض "false" است. متوقف کردن یک سوکت معمولاً توسط یک برنامه برای محدود کردن داده‌های ارسالی توسط همتای خود استفاده می‌شود. هنگامی که یک سوکت متوقف می‌شود، هیچ رویداد onReceive رخ نمی‌دهد. هنگامی که یک سوکت متصل شده و از حالت توقف خارج می‌شود، رویدادهای onReceive هنگام دریافت پیام‌ها دوباره رخ می‌دهند.

پارامترها

  • شناسه سوکت

    شماره

  • مکث کرد

    بولی

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

update()

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

ویژگی‌های سوکت را به‌روزرسانی می‌کند.

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • ویژگی‌هایی که باید به‌روزرسانی شوند.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به شکل زیر است:

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

    Promiseها فقط برای Manifest V3 و نسخه‌های بعدی پشتیبانی می‌شوند، سایر پلتفرم‌ها باید از callbackها استفاده کنند.

رویدادها

onReceive

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

این رویداد زمانی رخ می‌دهد که داده‌ها برای یک سوکت مشخص دریافت شده باشند.

پارامترها

onReceiveError

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

این رویداد زمانی رخ می‌دهد که در حین انتظار برای دریافت داده‌ها روی آدرس و پورت سوکت، خطایی در شبکه رخ دهد. پس از وقوع این رویداد، سوکت paused شده و دیگر رویدادهای onReceive برای این سوکت اجرا نمی‌شوند.

پارامترها