תיאור
אפשר להשתמש ב-API של chrome.sockets.tcp
כדי לשלוח ולקבל נתונים ברשת באמצעות חיבורי TCP. ה-API הזה מחליף את פונקציונליות ה-TCP שנמצאת בעבר ב-API chrome.socket
.
מניפסט
סוגים
CreateInfo
מאפיינים
-
socketId
number
המזהה של השקע החדש שנוצר. חשוב לדעת שמזהי שקעים שנוצרו מה-API הזה לא תואמים למזהי שקעים שנוצרו מממשקי API אחרים, כמו ה-API של
[
socket](../socket/)
שהוצא משימוש.
DnsQueryType
העדפות של רזולוציית DNS. ברירת המחדל היא any
ומשתמשת בהגדרות האישיות של מערכת ההפעלה שעשויה להחזיר IPv4 או IPv6. ipv4
אוכף את IPv4, ו-ipv6
אוכף את IPv6.
Enum
"כלשהו"
"ipv4"
"ipv6"
ReceiveErrorInfo
מאפיינים
-
resultCode
number
קוד התוצאה שהוחזר מקריאת הרשת הבסיסית.
-
socketId
number
מזהה ה-socket.
ReceiveInfo
מאפיינים
-
נתונים
ArrayBuffer
הנתונים שהתקבלו, בגודל מקסימלי של
bufferSize
. -
socketId
number
מזהה ה-socket.
SecureOptions
מאפיינים
-
tlsVersion
TLSVersionConstraints אופציונלי
SendInfo
מאפיינים
-
bytesSent
מספר אופציונלי
מספר הבייטים שנשלחו (if result == 0)
-
resultCode
number
קוד התוצאה שהוחזר מקריאת הרשת הבסיסית. ערך שלילי מציין שגיאה.
SocketInfo
מאפיינים
-
bufferSize
מספר אופציונלי
גודל מאגר הנתונים הזמני המשמש לקבלת נתונים. אם לא צוין במפורש גודל של מאגר נתונים זמני, הערך לא יצוין.
-
מחובר
בוליאני
סימון שמציין אם השקע מחובר לאפליקציה מרוחקת.
-
localAddress
מחרוזת אופציונלי
אם השקע הבסיסי מחובר, מכיל את כתובת IPv4/6 המקומית שלו.
-
localPort
מספר אופציונלי
אם השקע הבסיסי מחובר, מכילה את היציאה המקומית שלו.
-
שם
מחרוזת אופציונלי
מחרוזת מוגדרת אפליקציה שמשויכת לשקע.
-
מושהה
בוליאני
סימון שמציין אם שקע מחובר מונע מהעמית שלו לשלוח נתונים נוספים (ראו
setPaused
). -
peerAddress
מחרוזת אופציונלי
אם השקע הבסיסי מחובר, הוא מכיל את כתובת ה-peer/ IPv4/6.
-
peerPort
מספר אופציונלי
אם השקע הבסיסי מחובר, מכילה את היציאה השכנה.
-
מתמיד
בוליאני
סימון שמציין אם השקע נשאר פתוח כשהאפליקציה מושעה (מידע נוסף זמין ב-
SocketProperties.persistent
). -
socketId
number
מזהה ה-socket.
SocketProperties
מאפיינים
-
bufferSize
מספר אופציונלי
גודל מאגר הנתונים הזמני המשמש לקבלת נתונים. ערך ברירת המחדל הוא 4096.
-
שם
מחרוזת אופציונלי
מחרוזת בהגדרת האפליקציה שמשויכת לשקע.
-
מתמיד
ערך בוליאני אופציונלי
סימון שמציין אם השקע נשאר פתוח אחרי שמסתיימת הטעינה של דף האירוע של האפליקציה (מידע נוסף זמין בקטע ניהול מחזור החיים של אפליקציה). ערך ברירת המחדל הוא 'FALSE'. כשהאפליקציה נטענת, ניתן לאחזר כל sockets שנפתחו בעבר באמצעות 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,
)
הלחצן סוגר את השקע ומשחרר את הכתובת או היציאה שאליה מקושר השקע. כל שקע שנוצר צריך להיסגר אחרי השימוש. מזהה ה-socket לא תקף יותר מיד לאחר הפעלת הפונקציה. עם זאת, מובטח שהשקע ייסגר רק כשתתבצע קריאה חוזרת.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
הבטחה<Empty>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
)
חיבור השקע למחשב מרוחק. כשהפעולה connect
תסתיים בהצלחה, המערכת תגדיל את onReceive
אירועים כשיתקבלו נתונים מהעמית. אם תתרחש שגיאת רשת בזמן שסביבת זמן הריצה מקבלת חבילות, יווצר אירוע onReceiveError
. בשלב הזה לא יווצר אירוע onReceive
נוסף עבור השקע הזה עד לקריאה ל-method resume
.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
peerAddress
מחרוזת
הכתובת של המחשב המרוחק. שם ה-DNS, הפורמטים IPv4 ו-IPv6 נתמכים.
-
peerPort
number
היציאה של המכונה המרוחקת.
-
dnsQueryType
DnsQueryType אופציונלי
Chrome 103 ואילךהעדפה לרזולוציית כתובת.
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(result: number) => void
-
תוצאה
number
קוד התוצאה שהוחזר מקריאת הרשת הבסיסית. ערך שלילי מציין שגיאה.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
)
יצירת שקע TCP.
פרמטרים
-
נכסים
SocketProperties אופציונלי
מאפייני השקע (אופציונלי).
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(createInfo: CreateInfo) => void
-
createInfo
התוצאה של יצירת השקע.
-
החזרות
-
Promise<CreateInfo>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
)
מנתקים את השקע.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
הבטחה<Empty>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
)
אחזור המצב של השקע הנתון.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(socketInfo: SocketInfo) => void
-
socketInfo
אובייקט שמכיל את המידע על השקע.
-
החזרות
-
Promise<SocketInfo>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
)
אחזור רשימה של השקעים הפתוחים הנוכחיים שבבעלות האפליקציה.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:(socketInfos: SocketInfo[]) => void
-
socketInfos
מערך אובייקטים שמכיל מידע על השקע.
-
החזרות
-
Promise<SocketInfo[]>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
מתחילים חיבור של לקוח TLS דרך שקע הלקוח המחובר של TCP.
פרמטרים
-
socketId
number
השקע המחובר הקיים שבו צריך להשתמש.
-
אפשרויות
SecureOptions אופציונלי
מגבלות ופרמטרים לחיבור TLS.
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(result: number) => void
-
תוצאה
number
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
)
שליחת נתונים בשקע ה-TCP הנתון.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
נתונים
ArrayBuffer
הנתונים לשליחה.
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(sendInfo: SendInfo) => void
-
sendInfo
תוצאה של השיטה
send
.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
המדיניות מפעילה או משביתה את האפשרות של שמירה על פעילות קבועה עבור חיבור TCP.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
enable
בוליאני
אם הערך הוא True, יש להפעיל את הפונקציונליות של הודעת Keepalive.
-
עיכוב
מספר אופציונלי
מגדירים את שניות ההשהיה בין חבילת הנתונים האחרונה שהתקבלה לבין גשושית ה-Keepalive הראשונה. ברירת המחדל היא 0.
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(result: number) => void
-
תוצאה
number
קוד התוצאה שהוחזר מקריאת הרשת הבסיסית. ערך שלילי מציין שגיאה.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
מגדיר או מבטל את TCP_NODELAY
עבור חיבור TCP. האלגוריתם של Nagle יושבת לאחר ההגדרה של TCP_NODELAY
.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
noDelay
בוליאני
אם הערך הוא True, האלגוריתם של Nagle מושבת.
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(result: number) => void
-
תוצאה
number
קוד התוצאה שהוחזר מקריאת הרשת הבסיסית. ערך שלילי מציין שגיאה.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
המתג מפעיל או משבית את האפשרות של האפליקציה לקבל הודעות מהעמית שלה. ערך ברירת המחדל הוא 'FALSE'. בדרך כלל, אפליקציה משתמשת בהשהיית שקע כדי לווסת נתונים שנשלחים על ידי אפליקציה להשוואה. כאשר socket מושהה, לא מושמע אירוע onReceive
. כאשר מחברים ומבטלים את ההשהיה של שקע, אירועי onReceive
יושמעו שוב כאשר מתקבלות הודעות.
פרמטרים
-
socketId
number
-
מושהה
בוליאני
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
הבטחה<Empty>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
עדכון המאפיינים של ה-socket.
פרמטרים
-
socketId
number
מזהה ה-socket.
-
נכסים
המאפיינים שצריך לעדכן.
-
קריאה חוזרת (callback)
פונקציה אופציונלית
הפרמטר
callback
נראה כך:() => void
החזרות
-
הבטחה<Empty>
Chrome 121 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
אירועים
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
אירוע שמתרחש לאחר שהתקבלו נתונים של שקע מסוים.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(info: ReceiveInfo) => void
-
מידע
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
האירוע התרחש כשאירעה שגיאת רשת בזמן שסביבת זמן הריצה ממתינה לנתונים על כתובת השקע ועל היציאה. אחרי שהאירוע הזה יוגדל, ה-socket יוגדר לערך paused
ולא יתווספו עוד אירועים מסוג onReceive
ל-socket הזה.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(info: ReceiveErrorInfo) => void
-
מידע
-