설명
chrome.sockets.tcp
API를 사용하여 TCP 연결을 사용하여 네트워크를 통해 데이터를 주고받습니다. 이 API는 이전에 chrome.socket
API에 있던 TCP 기능을 대체합니다.
매니페스트
유형
CreateInfo
속성
-
socketId
숫자
새로 생성된 소켓의 ID입니다. 이 API에서 생성된 소켓 ID는 지원 중단된
[
socket](../socket/)
API 등 다른 API에서 생성된 소켓 ID와 호환되지 않습니다.
DnsQueryType
DNS 확인 환경설정 기본값은 any
이며 IPv4 또는 IPv6를 반환할 수 있는 현재 OS 구성을 사용합니다. ipv4
는 IPv4를, ipv6
는 IPv6를 강제 적용합니다.
열거형
'ipv4'
'ipv6'
ReceiveErrorInfo
속성
-
resultCode
숫자
기본 네트워크 호출에서 반환된 결과 코드입니다.
-
socketId
숫자
소켓 식별자입니다.
ReceiveInfo
속성
-
데이터
ArrayBuffer
수신된 데이터이며 최대 크기는
bufferSize
입니다. -
socketId
숫자
소켓 식별자입니다.
SecureOptions
속성
-
tlsVersion
SendInfo
속성
-
bytesSent
number 선택사항
전송된 바이트 수 (결과가 0인 경우)
-
resultCode
숫자
기본 네트워크 호출에서 반환된 결과 코드입니다. 음수 값은 오류를 나타냅니다.
SocketInfo
속성
-
bufferSize
number 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 버퍼 크기가 명시적으로 지정되지 않은 경우 값이 제공되지 않습니다.
-
연결됨
boolean
소켓이 원격 피어에 연결되어 있는지 여부를 나타내는 플래그.
-
localAddress
문자열 선택사항
기본 소켓이 연결되면 로컬 IPv4/6 주소를 포함합니다.
-
localPort
number 선택사항
기본 소켓이 연결되면 에 로컬 포트가 포함됩니다.
-
이름
문자열 선택사항
소켓과 연결된 애플리케이션 정의 문자열입니다.
-
일시중지됨
boolean
연결된 소켓이 피어에서 더 많은 데이터를 전송하지 못하도록 차단하는지 나타내는 플래그입니다 (
setPaused
참고). -
peerAddress
문자열 선택사항
기본 소켓이 연결되는 경우 피어/ IPv4/6 주소를 포함합니다.
-
peerPort
number 선택사항
기본 소켓이 연결되면 에 피어 포트가 포함됩니다.
-
영구
boolean
애플리케이션이 정지될 때 소켓이 열려 있는지 여부를 나타내는 플래그입니다 (
SocketProperties.persistent
참고). -
socketId
숫자
소켓 식별자입니다.
SocketProperties
속성
-
bufferSize
number 선택사항
데이터를 수신하는 데 사용되는 버퍼의 크기입니다. 기본값은 4,096입니다.
-
이름
문자열 선택사항
소켓과 연결된 애플리케이션 정의 문자열입니다.
-
영구
부울 선택사항
애플리케이션의 이벤트 페이지가 언로드될 때 소켓이 열려 있는지 여부를 나타내는 플래그입니다 (앱 수명 주기 관리 참조). 기본값은 'false'입니다. 애플리케이션이 로드되면 이전에 Persistent=true로 열린 모든 소켓을
getSockets
로 가져올 수 있습니다.
TLSVersionConstraints
속성
-
max
문자열 선택사항
-
분
문자열 선택사항
TLS의 최소 및 최대 허용 버전 지원되는 값은
tls1.2
또는tls1.3
입니다.tls1
및tls1.1
값은 더 이상 지원되지 않습니다.min
가 이러한 값 중 하나로 설정되면 자동으로tls1.2
로 고정됩니다.max
가 이러한 값 중 하나 또는 인식할 수 없는 다른 값으로 설정되면 자동으로 무시됩니다.
방법
close()
chrome.sockets.tcp.close(
socketId: number,
callback?: function,
)
소켓을 닫고 소켓이 바인딩된 주소/포트를 해제합니다. 생성된 각 소켓은 사용 후 닫혀야 합니다. 함수가 호출되면 소켓 ID가 더 이상 유효하지 않습니다. 그러나 소켓은 콜백이 호출될 때만 닫힙니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
connect()
chrome.sockets.tcp.connect(
socketId: number,
peerAddress: string,
peerPort: number,
dnsQueryType?: DnsQueryType,
callback: function,
)
소켓을 원격 머신에 연결합니다. connect
작업이 성공적으로 완료되면 피어에서 데이터를 수신할 때 onReceive
이벤트가 발생합니다. 런타임이 패킷을 수신하는 동안 네트워크 오류가 발생하면 onReceiveError
이벤트가 발생합니다. 이때 resume
메서드가 호출될 때까지 이 소켓에 대해 더 이상 onReceive
이벤트가 발생하지 않습니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
peerAddress
string
원격 시스템의 주소입니다. DNS 이름, IPv4, IPv6 형식이 지원됩니다.
-
peerPort
숫자
원격 머신의 포트입니다.
-
dnsQueryType
DnsQueryType 선택사항
Chrome 103 이상주소 확인 환경설정입니다.
-
콜백
기능
callback
매개변수는 다음과 같습니다.(result: number) => void
-
결과
숫자
기본 네트워크 호출에서 반환된 결과 코드입니다. 음수 값은 오류를 나타냅니다.
-
create()
chrome.sockets.tcp.create(
properties?: SocketProperties,
callback?: function,
)
TCP 소켓을 만듭니다.
매개변수
-
속성
SocketProperties 선택사항
소켓 속성 (선택사항)
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(createInfo: CreateInfo) => void
-
createInfo
소켓 생성 결과입니다.
-
반환 값
-
Promise<CreateInfo>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
disconnect()
chrome.sockets.tcp.disconnect(
socketId: number,
callback?: function,
)
소켓을 연결 해제합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getInfo()
chrome.sockets.tcp.getInfo(
socketId: number,
callback?: function,
)
지정된 소켓의 상태를 검색합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(socketInfo: SocketInfo) => void
-
socketInfo
소켓 정보를 포함하는 객체입니다.
-
반환 값
-
Promise<SocketInfo>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
getSockets()
chrome.sockets.tcp.getSockets(
callback?: function,
)
애플리케이션이 소유하고 있으며 현재 열려 있는 소켓의 목록을 검색합니다.
매개변수
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.(socketInfos: SocketInfo[]) => void
-
socketInfos
소켓 정보가 포함된 객체의 배열입니다.
-
반환 값
-
Promise<SocketInfo[]>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
secure()
chrome.sockets.tcp.secure(
socketId: number,
options?: SecureOptions,
callback: function,
)
연결된 TCP 클라이언트 소켓을 통해 TLS 클라이언트 연결을 시작합니다.
매개변수
-
socketId
숫자
사용할 기존 연결된 소켓입니다.
-
옵션
SecureOptions 선택사항
TLS 연결을 위한 제약조건 및 매개변수입니다.
-
콜백
기능
callback
매개변수는 다음과 같습니다.(result: number) => void
-
결과
숫자
-
send()
chrome.sockets.tcp.send(
socketId: number,
data: ArrayBuffer,
callback: function,
)
지정된 TCP 소켓에서 데이터를 전송합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
데이터
ArrayBuffer
전송할 데이터입니다.
-
콜백
기능
callback
매개변수는 다음과 같습니다.(sendInfo: SendInfo) => void
-
sendInfo
send
메서드의 결과입니다.
-
setKeepAlive()
chrome.sockets.tcp.setKeepAlive(
socketId: number,
enable: boolean,
delay?: number,
callback: function,
)
TCP 연결의 연결 유지 기능을 사용 설정하거나 사용 중지합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
enable
boolean
true인 경우 연결 유지 기능을 사용 설정합니다.
-
delay
number 선택사항
수신된 마지막 데이터 패킷과 첫 번째 연결 유지 프로브 사이의 지연 시간(초)을 설정합니다. 기본값은 0입니다.
-
콜백
기능
callback
매개변수는 다음과 같습니다.(result: number) => void
-
결과
숫자
기본 네트워크 호출에서 반환된 결과 코드입니다. 음수 값은 오류를 나타냅니다.
-
setNoDelay()
chrome.sockets.tcp.setNoDelay(
socketId: number,
noDelay: boolean,
callback: function,
)
TCP 연결의 TCP_NODELAY
를 설정하거나 지웁니다. TCP_NODELAY
가 설정되면 Nagle 알고리즘이 사용 중지됩니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
noDelay
boolean
true인 경우 Nagle 알고리즘이 사용 중지됩니다.
-
콜백
기능
callback
매개변수는 다음과 같습니다.(result: number) => void
-
결과
숫자
기본 네트워크 호출에서 반환된 결과 코드입니다. 음수 값은 오류를 나타냅니다.
-
setPaused()
chrome.sockets.tcp.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
애플리케이션이 동종 앱의 메시지를 수신하지 못하도록 설정합니다. 기본값은 'false' 입니다. 소켓 일시중지는 일반적으로 애플리케이션에서 피어에서 전송하는 데이터를 제한하는 데 사용됩니다. 소켓이 일시중지되면 onReceive
이벤트가 발생하지 않습니다. 소켓이 연결되고 일시중지가 해제되면 메시지 수신 시 onReceive
이벤트가 다시 발생합니다.
매개변수
-
socketId
숫자
-
일시중지됨
boolean
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
update()
chrome.sockets.tcp.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
소켓 속성을 업데이트합니다.
매개변수
-
socketId
숫자
소켓 식별자입니다.
-
업데이트할 속성입니다.
-
콜백
함수 선택사항
callback
매개변수는 다음과 같습니다.() => void
반환 값
-
Promise<void>
Chrome 121 이상프로미스는 Manifest V3 이상에서만 지원되며 다른 플랫폼에서는 콜백을 사용해야 합니다.
이벤트
onReceive
chrome.sockets.tcp.onReceive.addListener(
callback: function,
)
지정된 소켓에 대해 데이터가 수신되면 발생하는 이벤트입니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.(info: ReceiveInfo) => void
-
정보
-
onReceiveError
chrome.sockets.tcp.onReceiveError.addListener(
callback: function,
)
런타임이 소켓 주소와 포트의 데이터를 기다리는 동안 네트워크 오류가 발생하면 이벤트가 발생합니다. 이 이벤트가 발생하면 소켓이 paused
로 설정되고 이 소켓에 대해 onReceive
이벤트가 더 이상 발생하지 않습니다.
매개변수
-
콜백
기능
callback
매개변수는 다음과 같습니다.(info: ReceiveErrorInfo) => void