chrome.sockets.tcpServer

תיאור

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

מניפסט

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

"sockets"

סוגים

AcceptErrorInfo

תכונות

  • resultCode

    מספר

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

  • socketId

    מספר

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

AcceptInfo

תכונות

  • clientSocketId

    מספר

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

  • socketId

    מספר

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

CreateInfo

תכונות

  • socketId

    מספר

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

SocketInfo

תכונות

  • localAddress

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

    אם השקע מאזין, מכיל את כתובת IPv4/6 המקומית שלו.

  • localPort

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

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

  • name

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

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

  • מושהה

    boolean

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

  • מתמיד

    boolean

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

  • socketId

    מספר

    מזהה השקע.

SocketProperties

תכונות

  • name

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

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

  • מתמיד

    בוליאני אופציונלי

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

שיטות

close()

הבטחה
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • קריאה חוזרת (callback)

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

create()

הבטחה
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)

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

פרמטרים

  • נכסים

    SocketProperties אופציונלי

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

  • קריאה חוזרת (callback)

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

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

    (createInfo: CreateInfo)=>void

    • createInfo

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

החזרות

  • Promise<CreateInfo>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

disconnect()

הבטחה
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • קריאה חוזרת (callback)

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

getInfo()

הבטחה
chrome.sockets.tcpServer.getInfo(
  socketId: number,
  callback?: function,
)

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • קריאה חוזרת (callback)

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

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

    (socketInfo: SocketInfo)=>void

    • socketInfo

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

החזרות

  • Promise<SocketInfo>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

getSockets()

הבטחה
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)

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

פרמטרים

  • קריאה חוזרת (callback)

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

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

    (socketInfos: SocketInfo[])=>void

    • socketInfos

      מערך של אובייקט שמכיל מידע על השקע.

החזרות

  • Promise<SocketInfo[]>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

listen()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • כתובת

    מחרוזת

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

  • יציאה

    מספר

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

  • עיכוב

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

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

  • קריאה חוזרת (callback)

    פונקציה

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

    (result: number)=>void

    • תוצאה אחת

      מספר

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

setPaused()

הבטחה
chrome.sockets.tcpServer.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

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

פרמטרים

  • socketId

    מספר

  • מושהה

    boolean

  • קריאה חוזרת (callback)

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך. בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

update()

הבטחה
chrome.sockets.tcpServer.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • נכסים

    המאפיינים שצריך לעדכן.

  • קריאה חוזרת (callback)

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 121 ומעלה

    הבטחות נתמכות רק במניפסט מגרסה 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 לשקע הזה עד לחידוש השקע.

פרמטרים