chrome.sockets.tcpServer

توضیحات

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

مانیفست

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

"sockets"

انواع

AcceptErrorInfo

خواص

  • کد نتیجه

    شماره

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

  • شناسه سوکت

    شماره

    شناسه سوکت سرور.

AcceptInfo

خواص

  • شناسه سوکت کلاینت

    شماره

    شناسه سوکت کلاینت، یعنی شناسه سوکت اتصال تازه برقرار شده. این شناسه سوکت فقط باید با توابعی از فضای نام chrome.sockets.tcp استفاده شود. توجه داشته باشید که سوکت کلاینت در ابتدا متوقف شده است و باید صریحاً توسط برنامه از حالت مکث خارج شود تا شروع به دریافت داده کند.

  • شناسه سوکت

    شماره

    شناسه سوکت سرور.

CreateInfo

خواص

  • شناسه سوکت

    شماره

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

SocketInfo

خواص

  • آدرس محلی

    رشته اختیاری

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

  • بندر محلی

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

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

  • نام

    رشته اختیاری

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

  • مکث کرد

    بولی

    پرچمی که نشان می‌دهد آیا درخواست‌های اتصال روی یک سوکت در حال گوش دادن از طریق رویداد onAccept ارسال می‌شوند یا در صف انتظار listen queue قرار می‌گیرند. به setPaused مراجعه کنید. مقدار پیش‌فرض "false" است.

  • مداوم

    بولی

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

  • شناسه سوکت

    شماره

    شناسه سوکت.

SocketProperties

خواص

  • نام

    رشته اختیاری

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

  • مداوم

    بولی اختیاری

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

روش‌ها

close()

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

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

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

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

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

create()

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

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

پارامترها

  • خواص

    SocketProperties اختیاری است

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

  • تماس برگشتی

    تابع اختیاری

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

    (createInfo: CreateInfo) => void

بازگشت‌ها

  • کروم ۱۲۱+

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

disconnect()

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

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

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

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

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

getInfo()

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

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • تماس برگشتی

    تابع اختیاری

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

    (socketInfo: SocketInfo) => void

بازگشت‌ها

  • قول< SocketInfo >

    کروم ۱۲۱+

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

getSockets()

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

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

پارامترها

  • تماس برگشتی

    تابع اختیاری

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

    (socketInfos: SocketInfo[]) => void

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

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

بازگشت‌ها

  • قول< SocketInfo []>

    کروم ۱۲۱+

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

listen()

chrome.sockets.tcpServer.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)
: void

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

  • آدرس

    رشته

    آدرس دستگاه محلی.

  • بندر

    شماره

    پورت دستگاه محلی. وقتی روی 0 تنظیم شود، یک پورت آزاد به صورت پویا انتخاب می‌شود. پورت اختصاص داده شده به صورت پویا را می‌توان با فراخوانی getInfo پیدا کرد.

  • کارهای عقب افتاده

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

    طول صف انتظار سوکت. مقدار پیش‌فرض به سیستم عامل (SOMAXCONN) بستگی دارد که طول صف معقولی را برای اکثر برنامه‌ها تضمین می‌کند.

  • تماس برگشتی

    تابع

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

    (result: number) => void

    • نتیجه

      شماره

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

setPaused()

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

یک سوکت در حال گوش دادن را از پذیرش اتصالات جدید فعال یا غیرفعال می‌کند. هنگامی که متوقف می‌شود، یک سوکت در حال گوش دادن اتصالات جدید را می‌پذیرد تا زمانی که انباشت آن (به تابع listen مراجعه کنید) پر شود و سپس درخواست‌های اتصال اضافی را رد می‌کند. رویدادهای onAccept فقط زمانی رخ می‌دهند که سوکت از حالت مکث خارج شده باشد.

پارامترها

  • شناسه سوکت

    شماره

  • مکث کرد

    بولی

  • تماس برگشتی

    تابع اختیاری

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

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

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

update()

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

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

پارامترها

  • شناسه سوکت

    شماره

    شناسه سوکت.

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

  • تماس برگشتی

    تابع اختیاری

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

    () => void

بازگشت‌ها

  • قول<void>

    کروم ۱۲۱+

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

رویدادها

onAccept

chrome.sockets.tcpServer.onAccept.addListener(
  callback: function,
)

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

پارامترها

onAcceptError

chrome.sockets.tcpServer.onAcceptError.addListener(
  callback: function,
)

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

پارامترها