Nội dung mô tả
Dùng API chrome.sockets.tcpServer
để tạo ứng dụng máy chủ bằng kết nối TCP. API này thay thế chức năng TCP trước đó có trong API chrome.socket
.
Tệp kê khai
Loại
AcceptErrorInfo
Thuộc tính
-
resultCode
number
Mã kết quả được trả về từ lệnh gọi mạng cơ bản.
-
socketId
number
Mã nhận dạng ổ cắm máy chủ.
AcceptInfo
Thuộc tính
-
clientSocketId
number
Giá trị nhận dạng cổng máy khách, tức là giá trị nhận dạng ổ cắm của kết nối mới thiết lập. Bạn chỉ nên sử dụng giá trị nhận dạng ổ cắm này với các hàm trong không gian tên
chrome.sockets.tcp
. Lưu ý rằng cổng ứng dụng khách ban đầu bị tạm dừng và phải được ứng dụng huỷ tạm dừng một cách rõ ràng để bắt đầu nhận dữ liệu. -
socketId
number
Mã nhận dạng ổ cắm máy chủ.
CreateInfo
Thuộc tính
-
socketId
number
Mã của cổng máy chủ mới được tạo. Lưu ý rằng mã cổng được tạo qua API này không tương thích với mã cổng được tạo qua các API khác, chẳng hạn như API
[
socket](../socket/)
không dùng nữa.
SocketInfo
Thuộc tính
-
localAddress
chuỗi không bắt buộc
Nếu ổ cắm đang nghe, hãy chứa địa chỉ IPv4/6 cục bộ.
-
localPort
số không bắt buộc
Nếu ổ cắm đang nghe, hãy chứa cổng cục bộ.
-
tên
chuỗi không bắt buộc
Chuỗi do ứng dụng xác định được liên kết với ổ cắm.
-
tạm dừng
boolean
Cờ cho biết liệu các yêu cầu kết nối trên một cổng nghe được gửi đi thông qua sự kiện
onAccept
hay đã đưa vào danh sách chờ trong danh sách chờ của hàng đợi nghe. Vui lòng xemsetPaused
. Giá trị mặc định là "false". -
cố định
boolean
Cờ cho biết liệu ổ cắm có tiếp tục mở khi trang sự kiện của ứng dụng bị huỷ tải hay không (xem
SocketProperties.persistent
). Giá trị mặc định là "false". -
socketId
number
Giá trị nhận dạng ổ cắm.
SocketProperties
Thuộc tính
-
tên
chuỗi không bắt buộc
Một chuỗi do ứng dụng xác định được liên kết với ổ cắm.
-
cố định
boolean không bắt buộc
Cờ cho biết liệu socket vẫn mở khi trang sự kiện của ứng dụng bị huỷ tải (xem phần Quản lý vòng đời ứng dụng). Giá trị mặc định là "false". Khi ứng dụng được tải, bạn có thể tìm nạp mọi ổ cắm đã mở trước đó bằng sustain=true bằng
getSockets
.
Phương thức
close()
chrome.sockets.tcpServer.close(
socketId: number,
callback?: function,
)
Ngắt kết nối và huỷ ổ cắm. Bạn phải đóng mỗi ổ cắm được tạo sau khi sử dụng. Mã cổng kết nối không còn hợp lệ ngay khi hàm được gọi. Tuy nhiên, ổ cắm được đảm bảo chỉ đóng khi lệnh gọi lại được thực hiện.
Tham số
-
socketId
number
Giá trị nhận dạng ổ cắm.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
create()
chrome.sockets.tcpServer.create(
properties?: SocketProperties,
callback?: function,
)
Tạo một cổng máy chủ TCP.
Tham số
-
các tài sản
SocketProperties không bắt buộc
Thuộc tính ổ cắm (không bắt buộc).
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(createInfo: CreateInfo) => void
-
createInfo
Kết quả của việc tạo ổ cắm.
-
Giá trị trả về
-
Promise<CreateInfo>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
disconnect()
chrome.sockets.tcpServer.disconnect(
socketId: number,
callback?: function,
)
Ngắt kết nối ổ cắm nghe, tức là dừng chấp nhận kết nối mới và giải phóng địa chỉ/cổng liên kết với ổ cắm. Giá trị nhận dạng ổ cắm vẫn hợp lệ, ví dụ: bạn có thể sử dụng giá trị này với listen
để chấp nhận các kết nối trên một cổng và địa chỉ mới.
Tham số
-
socketId
number
Giá trị nhận dạng ổ cắm.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getInfo()
chrome.sockets.tcpServer.getInfo(
socketId: number,
callback?: function,
)
Truy xuất trạng thái của ổ cắm đã cho.
Tham số
-
socketId
number
Giá trị nhận dạng ổ cắm.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(socketInfo: SocketInfo) => void
-
socketInfo
Đối tượng chứa thông tin về cổng.
-
Giá trị trả về
-
Promise<SocketInfo>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
getSockets()
chrome.sockets.tcpServer.getSockets(
callback?: function,
)
Truy xuất danh sách ổ cắm hiện đang mở do ứng dụng sở hữu.
Tham số
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:(socketInfos: SocketInfo[]) => void
-
socketInfos
Mảng đối tượng chứa thông tin về socket.
-
Giá trị trả về
-
Promise<SocketInfo[]>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
listen()
chrome.sockets.tcpServer.listen(
socketId: number,
address: string,
port: number,
backlog?: number,
callback: function,
)
Theo dõi các kết nối trên cổng và địa chỉ đã chỉ định. Nếu cổng/địa chỉ đang được sử dụng, lệnh gọi lại sẽ cho biết có lỗi.
Tham số
-
socketId
number
Giá trị nhận dạng ổ cắm.
-
xử lý
string
Địa chỉ của máy cục bộ.
-
cổng
number
Cổng của máy cục bộ. Khi bạn đặt thành
0
, cổng miễn phí sẽ được chọn động. Bạn có thể tìm thấy cổng được phân bổ động bằng cách gọigetInfo
. -
tồn đọng
số không bắt buộc
Độ dài của hàng đợi nghe của cổng. Giá trị mặc định tuỳ thuộc vào Hệ điều hành (SOMAXCONN). Hệ điều hành này đảm bảo độ dài hàng đợi hợp lý cho hầu hết các ứng dụng.
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(result: number) => void
-
kết quả
number
Mã kết quả được trả về từ lệnh gọi mạng cơ bản. Giá trị âm cho biết đã xảy ra lỗi.
-
setPaused()
chrome.sockets.tcpServer.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Bật hoặc tắt ổ cắm nghe để không chấp nhận kết nối mới. Khi bị tạm dừng, ổ cắm nghe sẽ chấp nhận các kết nối mới cho đến khi phần chưa thực hiện (xem hàm listen
) đã đầy, sau đó từ chối các yêu cầu kết nối bổ sung. Các sự kiện onAccept
chỉ được kích hoạt khi ổ cắm đã được huỷ tạm dừng.
Tham số
-
socketId
number
-
tạm dừng
boolean
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
update()
chrome.sockets.tcpServer.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Cập nhật các thuộc tính socket.
Tham số
-
socketId
number
Giá trị nhận dạng ổ cắm.
-
các tài sản
Các thuộc tính cần cập nhật.
-
số gọi lại
hàm không bắt buộc
Tham số
callback
sẽ có dạng như sau:() => void
Giá trị trả về
-
Promise<void>
Chrome 121 trở lênLời hứa chỉ được hỗ trợ cho Manifest V3 trở lên, các nền tảng khác cần sử dụng lệnh gọi lại.
Sự kiện
onAccept
chrome.sockets.tcpServer.onAccept.addListener(
callback: function,
)
Sự kiện xảy ra khi kết nối với cổng máy chủ.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(info: AcceptInfo) => void
-
info
-
onAcceptError
chrome.sockets.tcpServer.onAcceptError.addListener(
callback: function,
)
Sự kiện xuất hiện khi xảy ra lỗi mạng trong khi thời gian chạy đang chờ các kết nối mới trên địa chỉ cổng và cổng. Sau khi sự kiện này được kích hoạt, ổ cắm sẽ được đặt thành paused
và không có sự kiện onAccept
nào nữa xảy ra cho ổ cắm này cho đến khi ổ cắm được tiếp tục.
Tham số
-
số gọi lại
hàm
Tham số
callback
sẽ có dạng như sau:(info: AcceptErrorInfo) => void
-
info
-