chrome.sockets.tcp

شرح

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

مانیفست

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

"sockets"

انواع

CreateInfo

مشخصات

  • socketId

    شماره

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

DnsQueryType

Chrome نسخه ۱۰۳ و بالاتر

اولویت‌های تفکیک ساناد. پیش‌فرض any است و از پیکربندی سیستم‌عامل فعلی استفاده می‌کند که ممکن است IPv4 یا IPv6 را برگرداند. ipv4 پروتکل اینترنتی نسخه ۴ را اجباری می‌کند و ipv6 پروتکل اینترنتی نسخه ۶ را اجباری می‌کند.

شمارشی

«any»

"ipv4"

"ipv6"

ReceiveErrorInfo

مشخصات

  • resultCode

    شماره

    کد نتیجه از تماس شبکه زیربنایی برگردانده شد.

  • socketId

    شماره

    شناسه سوکت.

ReceiveInfo

مشخصات

  • داده

    ArrayBuffer

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

  • socketId

    شماره

    شناسه سوکت.

SecureOptions

مشخصات

SendInfo

مشخصات

  • bytesSent

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

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

  • resultCode

    شماره

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

SocketInfo

مشخصات

  • bufferSize

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

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

  • اتصال برقرار شد

    بولی

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

  • localAddress

    رشته اختیاری

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

  • localPort

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

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

  • نام

    رشته اختیاری

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

  • موقتاً متوقف‌شده

    بولی

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

  • peerAddress

    رشته اختیاری

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

  • peerPort

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

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

  • دائمی

    بولی

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

  • socketId

    شماره

    شناسه سوکت.

SocketProperties

مشخصات

  • bufferSize

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

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

  • نام

    رشته اختیاری

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

  • دائمی

    بولی اختیاری

    پرچمی که نشان می‌دهد آیا سوکت هنگام بارگیری نشدن صفحه رویداد برنامه باز می‌ماند (به مدیریت چرخه حیات برنامه مراجعه کنید). مقدار پیش‌فرض «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 به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

connect()

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

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

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • peerAddress

    رشته

    نشانی دستگاه ازراه‌دور. از نام ساناد، قالب‌های IPv4 و IPv6 پشتیبانی می‌شود.

  • peerPort

    شماره

    درگاه ماشین راه‌دور.

  • dnsQueryType

    DnsQueryType اختیاری

    Chrome نسخه ۱۰۳ و بالاتر

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

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

create()

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

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

پارامترها

  • اقامتگاه‌ها

    SocketProperties اختیاری

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

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (createInfo: CreateInfo) => void

    • createInfo

      نتیجه ایجاد سوکت.

بازگشتی‌ها

  • Promise<CreateInfo>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

disconnect()

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

اتصال سوکت را قطع می‌کند.

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getInfo()

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

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

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (socketInfo: SocketInfo) => void

    • socketInfo

      شیء حاوی اطلاعات سوکت.

بازگشتی‌ها

  • Promise<SocketInfo>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getSockets()

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

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

پارامترها

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

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

بازگشتی‌ها

  • Promise<SocketInfo[]>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

secure()

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

اتصال مشتری TLS را ازطریق سوکت مشتری TCP متصل‌شده شروع می‌کند.

پارامترها

  • socketId

    شماره

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

  • گزینه‌ها

    SecureOptions اختیاری

    محدودیت‌ها و پارامترهای اتصال «امنیت لایه انتقال».

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (result: number) => void

    • نتیجه

      شماره

send()

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

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

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • داده

    ArrayBuffer

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

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (sendInfo: SendInfo) => void

    • sendInfo

      نتیجه روش send.

setKeepAlive()

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

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

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • فعال کردن

    بولی

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

  • تأخیر

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

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

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

setNoDelay()

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

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

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • noDelay

    بولی

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

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (result: number) => void

    • نتیجه

      شماره

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

setPaused()

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

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

پارامترها

  • socketId

    شماره

  • موقتاً متوقف‌شده

    بولی

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

update()

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

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

پارامترها

  • socketId

    شماره

    شناسه سوکت.

  • اقامتگاه‌ها

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

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۲۱ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

رویدادها

onReceive

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

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

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (info: ReceiveInfo) => void

onReceiveError

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

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

پارامترها