chrome.sockets.tcpServer

תיאור

משתמשים ב-chrome.sockets.tcpServer API כדי ליצור אפליקציות לשרת באמצעות חיבורי TCP. ה-API הזה מחליף את הפונקציונליות של TCP שהייתה זמינה בעבר ב-chrome.socket API.

מניפסט

כדי להשתמש ב-API הזה, צריך להצהיר על המפתחות הבאים במניפסט.

"sockets"

סוגים

AcceptErrorInfo

מאפיינים

  • resultCode

    number

    קוד התוצאה שמוחזר מקריאת הרשת הבסיסית.

  • socketId

    number

    מזהה שקע השרת.

AcceptInfo

מאפיינים

  • clientSocketId

    number

    מזהה שקע הלקוח, כלומר מזהה השקע של החיבור החדש שנוצר. המזהה הזה של שקע צריך לשמש רק עם פונקציות ממרחב השמות chrome.sockets.tcp. שימו לב: שקע הלקוח מושהה בהתחלה, והאפליקציה צריכה לבטל את ההשהיה שלו באופן מפורש כדי להתחיל לקבל נתונים.

  • socketId

    number

    מזהה שקע השרת.

CreateInfo

מאפיינים

  • socketId

    number

    המזהה של שקע השרת שנוצר. שימו לב שמזהי socket שנוצרו מ-API הזה לא תואמים למזהי socket שנוצרו מ-API אחרים, כמו [socket](../socket/) API שהוצא משימוש.

SocketInfo

מאפיינים

  • localAddress

    מחרוזת אופציונלי

    אם הסוקט נמצא במצב האזנה, הוא מכיל את כתובת ה-IPv4/6 המקומית שלו.

  • localPort

    מספר אופציונלי

    אם השקע מאזין, הוא מכיל את היציאה המקומית שלו.

  • שם

    מחרוזת אופציונלי

    מחרוזת שהוגדרה על ידי האפליקציה ומשויכת לשקע.

  • מושהה

    בוליאני

    דגל שמציין אם בקשות לחיבור בשקע האזנה נשלחות דרך אירוע onAccept או מתווספות לתור בהמתנה בתור ההאזנה. setPaused. ערך ברירת המחדל הוא false.

  • קבוע

    בוליאני

    דגל שמציין אם השקע נשאר פתוח כשדף האירוע של האפליקציה לא נטען (ראו SocketProperties.persistent). ערך ברירת המחדל הוא false.

  • socketId

    number

    המזהה של שקע ה-socket.

SocketProperties

מאפיינים

  • שם

    מחרוזת אופציונלי

    מחרוזת שמוגדרת על ידי האפליקציה ומשויכת לשקע.

  • קבוע

    ‫boolean אופציונלי

    דגל שמציין אם השקע נשאר פתוח כשדף האירוע של האפליקציה לא נטען (ראו ניהול מחזור החיים של האפליקציה). ערך ברירת המחדל הוא false. כשהאפליקציה נטענת, אפשר לאחזר את כל השקעים שנפתחו קודם עם persistent=true באמצעות getSockets.

Methods

close()

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

הפונקציה מנתקת את השקע ומשמידה אותו. צריך לסגור כל שקע שנוצר אחרי השימוש. מזהה השקע כבר לא תקף ברגע שהפונקציה מופעלת. עם זאת, מובטח שהסוקט ייסגר רק כשהקריאה החוזרת תופעל.

פרמטרים

  • socketId

    number

    המזהה של שקע ה-socket.

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

create()

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

יוצרת שקע שרת TCP.

פרמטרים

  • נכסים

    SocketProperties אופציונלי

    מאפייני השקע (אופציונלי).

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (createInfo: CreateInfo) => void

    • createInfo

      התוצאה של יצירת השקע.

החזרות

  • Promise<CreateInfo>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

disconnect()

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

מנתק את שקע ההאזנה, כלומר מפסיק לקבל חיבורים חדשים ומשחרר את הכתובת או היציאה שהשקע קשור אליהן. מזהה השקע נשאר תקף, למשל, אפשר להשתמש בו עם listen כדי לקבל חיבורים ביציאה ובכתובת חדשות.

פרמטרים

  • socketId

    number

    המזהה של שקע ה-socket.

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

getInfo()

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

מאחזרת את המצב של שקע נתון.

פרמטרים

  • socketId

    number

    המזהה של שקע ה-socket.

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (socketInfo: SocketInfo) => void

    • socketInfo

      אובייקט שמכיל את פרטי השקע.

החזרות

  • Promise<SocketInfo>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

getSockets()

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

מאחזר את רשימת השקעים הפתוחים כרגע שבבעלות האפליקציה.

פרמטרים

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      מערך של אובייקטים שמכילים פרטים על שקע.

החזרות

  • Promise<SocketInfo[]>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

listen()

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

השירות מאזין לחיבורים ביציאה ובכתובת שצוינו. אם הכתובת או מספר הטלפון בניוד נמצאים בשימוש, הקריאה החוזרת (callback) מציינת שהפעולה נכשלה.

פרמטרים

  • socketId

    number

    המזהה של שקע ה-socket.

  • כתובת

    מחרוזת

    הכתובת של המכונה המקומית.

  • ניוד

    number

    היציאה של המכונה המקומית. אם הערך הוא 0, נבחר באופן דינמי יציאה חופשית. כדי למצוא את היציאה שהוקצתה באופן דינמי, מתקשרים אל getInfo.

  • backlog

    מספר אופציונלי

    אורך תור ההמתנה של השקע. ערך ברירת המחדל תלוי במערכת ההפעלה (SOMAXCONN), והוא מבטיח אורך סביר של התור ברוב האפליקציות.

  • callback

    פונקציה

    הפרמטר callback נראה כך:

    (result: number) => void

    • תוצאה

      number

      קוד התוצאה שמוחזר מקריאת הרשת הבסיסית. ערך שלילי מציין שגיאה.

setPaused()

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

המתג מפעיל או משבית את האפשרות של שקע האזנה לקבל חיבורים חדשים. במצב מושהה, שקע האזנה מקבל חיבורים חדשים עד שרשימת ההמתנה שלו (ראו listen function) מלאה, ואז הוא דוחה בקשות חיבור נוספות. אירועי onAccept מופעלים רק כשהשקע מושהה.

פרמטרים

  • socketId

    number

  • מושהה

    בוליאני

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

update()

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

עדכון מאפייני השקע.

פרמטרים

  • socketId

    number

    המזהה של שקע ה-socket.

  • נכסים

    המאפיינים לעדכון.

  • callback

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    Chrome 121 ואילך

    ההבטחות נתמכות רק ב-Manifest V3 ובגרסאות מאוחרות יותר. בפלטפורמות אחרות צריך להשתמש בפונקציות Callback.

אירועים

onAccept

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

אירוע שמופעל כשנוצר חיבור לשקע השרת.

פרמטרים

  • callback

    פונקציה

    הפרמטר callback נראה כך:

    (info: AcceptInfo) => void

onAcceptError

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

האירוע מופעל כשמתרחשת שגיאה ברשת בזמן שהסביבה העסקית ממתינה לחיבורים חדשים בכתובת ובפורט של הסוקט. אחרי שהאירוע הזה מופעל, השקע מוגדר ל-paused ולא מופעלים יותר אירועי onAccept בשקע הזה עד שהשקע מופעל מחדש.

פרמטרים