TCPClientSocket

개요

TCP 통신을 사용하여 서버에 연결하여 정보를 송수신할 수 있는 클라이언트 컴포넌트입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




- 1:1 연결방식의 TCP 통신 Socket 기능을 지원하고 있습니다.

속성

address

연결한 서버의 주소값을 갖는 읽기전용 속성입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




속성 타입

☐ Enum

☐ Expr

☐ Control

☑ Hidden

☑ ReadOnly

☐ Bind

☐ Collection

☐ StringResource

문법 설정

var strAddress = this.TCPClientSocket00.address;

참고

- open() 메소드를 사용하여 서버에 연결했을 때 값을 갖는 속성입니다.

errorcode

TCPClientSocket 에서 요청된 작업이 실패했을 때 발생한 에러코드값을 갖는 읽기전용 속성입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




속성 타입

☐ Enum

☐ Expr

☐ Control

☑ Hidden

☑ ReadOnly

☐ Bind

☐ Collection

☐ StringResource

문법 설정

var nErrCd = this.TCPClientSocket00.errorcode;

참고

- TCPClientSocket 에서 마지막에 발생한 에러코드값을 갖습니다.

errormsg

TCPClientSocket 에서 요청된 작업이 실패했을 때 발생한 에러메시지값을 갖는 읽기전용 속성입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




속성 타입

☐ Enum

☐ Expr

☐ Control

☑ Hidden

☑ ReadOnly

☐ Bind

☐ Collection

☐ StringResource

문법 설정

var nErrMsg = this.TCPClientSocket00.errormsg;

참고

- TCPClientSocket 에서 마지막에 발생한 에러메시지값을 갖습니다.

- 에러 메시지는 운영체제 레벨에서 제공되는 시스템 메시지를 사용합니다.
   따라서, 운영체제의 버전에 따라 에러 메시지가 달라질 수 있습니다.

isopen

서버와 연결된 상태값을 갖는 읽기전용 속성입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




속성 타입

☐ Enum

☐ Expr

☐ Control

☑ Hidden

☑ ReadOnly

☐ Bind

☐ Collection

☐ StringResource

문법 설정

var bOpen = this.TCPClientSocket00.isopen;

isopen

서버와 연결된 상태이면 "true" 값을 갖습니다.


서버와 연결된 상태가 아니면 "false" 값을 갖습니다.

참고

- 서버와 연결하려면 open() 메소드를 사용하여야 합니다.

- 서버에서 연결을 끊었을 경우는 isopen 속성에 정확한 값이 설정되지 않습니다.

name

TCPClientSocket 의 이름을 설정하는 속성입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




속성 타입

☐ Enum

☐ Expr

☐ Control

☑ Hidden

☐ ReadOnly

☐ Bind

☐ Collection

☐ StringResource

문법

TCPClientSocket.name[= strName]

문법 설정

strName

컴포넌트의 이름을 설정합니다.

참고

- name 속성은 사용자가 지정한 컴포넌트의 이름으로 논리적으로 중복이 가능합니다.

- 넥사크로 스튜디오에서 컴포넌트를 생성하거나 id 값을 설정하면 name 속성에 동일한 값이 설정됩니다.

port

연결된 서버의 Port 값을 갖는 읽기전용 속성입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




속성 타입

☐ Enum

☐ Expr

☐ Control

☑ Hidden

☑ ReadOnly

☐ Bind

☐ Collection

☐ StringResource

문법 설정

var strPort = this.TCPClientSocket00.port;

참고

- open() 메소드를 사용하여 서버에 연결했을 때 값을 갖는 속성입니다.

메서드

addEvent

TCPClientSocket 에 특정 이벤트를 선언하여 추가하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.addEvent( strEventID )

파라미터

Parameters

Type

Description

strEventID

String

TCPClientSocket 에 추가할 이벤트의 ID 를 문자열로 설정합니다.

var bResult = this.TCPClientSocket00.addEvent( "onmove" );

반환

Type

Description

Boolean

이벤트 추가에 성공하면 true 를 반환합니다.


이벤트 추가에 실패하거나 선언되어 있는 이벤트 ID 설정 시 false 를 반환합니다.

참고

- Composite Component 와 같은 사용자 컴포넌트에 특정 이벤트를 추가할 때 사용하는 메소드입니다.

- TCPClientSocket 에서 특정 이벤트를 제거하려면 removeEvent() 메소드를 사용하여야 합니다.

addEventHandler

TCPClientSocket 의 이벤트에 핸들러 함수를 추가하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.addEventHandler( strEventID, objFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수가 추가될 이벤트의 ID를 설정합니다.

objFunc

Object

이벤트 발생 시 수행될 핸들러 함수를 오브젝트 형태로 설정합니다.

objTarget

Object

핸들러 함수가 정의된 영역을 설정합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.addEventHandler( "onerror", this.TCPClientSocket_onerror, this);

반환

Type

Description

Number

이벤트에 추가된 핸들러 함수의 인덱스를 반환합니다.

동일한 핸들러 함수가 이미 있다면 해당 핸들러 함수의 인덱스를 반환합니다.

정상적으로 추가되지 않은 경우에는 "-1" 을 반환합니다.

addEventHandlerLookup

검색된 함수를 TCPClientSocket 의 이벤트에 핸들러 함수로 추가하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.addEventHandlerLookup( strEventID, strFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수가 추가될 이벤트의 ID를 설정합니다.

strFunc

String

이벤트 발생 시 수행될 핸들러 함수의 이름을 문자열로 설정합니다.

objTarget

Object

핸들러 함수를 검색할 영역을 설정합니다.


해당 영역에 핸들러 함수가 정의되지 않았다면 상위 영역으로 올라가며 검색을 합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.addEventHandlerLookup( "onerror", "TCPClientSocket_onerror", this);

반환

Type

Description

Number

이벤트에 추가된 핸들러 함수의 인덱스를 반환합니다.

동일한 핸들러 함수가 이미 있다면 해당 핸들러 함수의 인덱스를 반환합니다.

정상적으로 추가되지 않은 경우에는 "-1" 을 반환합니다.

참고

- strFunc 이름의 함수를 objTarget 영역부터 상위로 올라가며 검색합니다.
  검색된 함수가 있다면 이벤트에 핸들러 함수로 추가합니다.

clearEventHandler

TCPClientSocket 의 이벤트에 등록된 핸들러 함수를 모두 제거하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.clearEventHandler( strEventID )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 모두 제거할 이벤트의 ID 를 설정합니다.

var nCnt = this.TCPClientSocket00.clearEventHandler( "onerror" );

반환

Type

Description

Number

특정 이벤트에서 제거된 핸들러 함수의 갯수를 반환합니다.

참고

- 특정 핸들러 함수만 제거하려면 removeEventHandler() 메소드를 사용하여야 합니다.

close

연결된 서버에 연결해제를 요청하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.close()

파라미터

var bSucc = this.TCPClientSocket00.close();

반환

Type

Description

Boolean

연결해제 요청이 정상적으로 실행되었으면 "true" 를 반환합니다.


연결해제 요청이 정상적으로 실행되지 않았으면 "false" 를 반환합니다.

참고

- 서버와 연결해제에 성공하면 onsuccess 이벤트가 발생합니다.
   서버와 연결해제에 실패하면 onerror 이벤트가 발생합니다.

- 연결된 서버의 설정에 따라 연결을 해제하지 않으면, 마지막에 보낸 내용이 실제로 보내지지 않을 수도 있습니다.
 
- 서버 연결을 더 이상 사용하지 않으면 시스템 자원 절약과 데이터 송신 마무리를 위해 close() 메서드를 사용하여 연결을 해제하는게 좋습니다.

findEventHandler

TCPClientSocket 의 이벤트에서 핸들러 함수를 찾아 인덱스를 반환하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.findEventHandler( strEventID, objFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 찾을 이벤트의 ID를 설정합니다.

objFunc

Object

찾으려고 하는 핸들러 함수를 오브젝트 형태로 설정합니다.

objTarget

Object

찾으려고 하는 핸들러 함수가 정의된 영역을 설정합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.findEventHandler( "onerror", this.TCPClientSocket_onerror, this);

반환

Type

Description

Number

이벤트에서 찾으려고 하는 핸들러 함수의 인덱스를 반환합니다.


찾으려고 하는 핸들러 함수가 존재하지 않는다면 "-1" 을 반환합니다.

참고

- 인덱스는 "0" 부터 시작합니다.

getEventHandler

TCPClientSocket 의 이벤트에서 지정된 인덱스에 해당하는 핸들러 함수를 반환하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.getEventHandler( strEventID, nIdx )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 얻을 이벤트의 ID를 설정합니다.

nIdx

Number

얻으려고 하는 핸들러 함수의 인덱스를 설정합니다.


인덱스는 "0" 부터 시작합니다.

var objFunc = TCPClientSocket00.getEventHandler( "onmove", 0 );

반환

Type

Description

Object

지정된 인덱스의 핸들러 함수 오브젝트를 반환합니다.


지정된 인덱스에 핸들러 함수가 존재하지 않는다면 null 을 반환합니다.

insertEventHandler

TCPClientSocket 의 특정 이벤트에 핸들러 함수를 지정한 위치에 삽입하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.insertEventHandler( strEventID, nIndex, objFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수가 삽입될 이벤트의 ID 를 설정합니다.

nIndex

Number

핸들러 함수가 삽입될 위치를 인덱스로 설정합니다.


-1 값 설정 시 마지막에 추가됩니다.

이벤트에 설정된 핸들러 함수의 갯수보다 큰 값을 설정한 경우 마지막에 추가됩니다.

NaN 값을 입력하면 ECMA 의 정수 변환 규칙에 따라 0 이 설정됩니다.

objFunc

Object

이벤트 발생 시 수행될 핸들러 함수를 설정합니다.

objTarget

Object

핸들러 함수가 정의된 영역을 설정합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo) { // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.insertEventHandler( "onerror", 0, this.TCPClientSocket00_onerror, this);

반환

Type

Description

Number

이벤트에 삽입된 핸들러 함수의 인덱스를 반환합니다.

동일한 핸들러 함수가 이미 있다면 해당 핸들러 함수의 인덱스를 반환합니다.


핸들러 함수가 정상적으로 삽입되지 않은 경우에는 -1 을 반환합니다.

참고

- 첫번째 핸들러 함수의 인덱스는 0 입니다.

open

TCP 를 이용하여 서버에 소켓연결을 요청하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.open( strAddress, nPort )

파라미터

Parameters

Type

Description

strAddress

String

연결할 서버의 도메인명 또는 IPv4 형식의 IP 를 문자열로 설정합니다.

nPort

Number

연결할 서버의 Port 값을 숫자로 설정합니다.

var bSucc = this.TCPClientSocket00.open("127.0.0.1",3000);

반환

Type

Description

Boolean

연결요청이 정상적으로 실행되었으면 true 를 반환합니다.


연결요청이 정상적으로 실행되지 않았으면 false 를 반환합니다.

참고

- 서버와 연결에 성공하면 onsuccess 이벤트가 발생합니다.
   서버와 연결에 실패하면 onerror 이벤트가 발생합니다.

- 연결할 서버의 주소가 잘못되었거나 허용하지 않는 주소이면 "false"를 반환하고 이벤트가 발생하지 않습니다.

- 넥사크로 스튜디오에서 개발중인 경우는 모든 서버 주소에 대하여 연결을 허용하지만,
   어플리케이션이 운영중인 경우는 연결할 서버의 주소가 ADL 주소와 C-Class 대역이 같아야 합니다.
   주소의 C-Class 영역이 다를 경우 연결에 문제가 발생할 수 있습니다.

- ADL 주소와 서버의 주소가 모두 도메인명이거나 IP 주소 형식일 경우 URL 검사를 수행합니다.
   두 주소의 형식이 다른 경우에는 연결에 문제가 발생할 수 있습니다.

- 샌드박스(sandbox) 옵션인 Environment 의 networksecurelevel 속성값이 "all" 인 경우는 모든 경로의 접근을 허용합니다.
   이 경우 사용자에게 접근 허용 여부를 확인 한 후 사용자가 승인한 경우에만 기능을 수행합니다.

read

연결된 서버에서 데이터를 수신하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.read( nSize [, nTimeOut [, strCharSet]] )

파라미터

Parameters

Type

Description

nSize

Number

수신될 데이터의 최대 크기를 바이트 단위의 숫자로 설정합니다.


설정값은 수신될 데이터의 최대 크기로 적용되며 실제 수신된 데이터는 설정값보다 작을 수 있습니다.


0 을 설정하면 수신 할 데이터가 있는지 검사만 수행합니다.

음수값을 설정하면 메소드 실행 시 실패로 처리됩니다.

nTimeOut

Number

데이터가 수신될 때까지 대기하는 시간을 초단위의 숫자로 설정합니다.


0 이하값을 설정하면 대기시간이 무한대로 적용됩니다.


값 생략 시 0 으로 적용됩니다.

strCharSet

String

데이터가 수신될 때 적용될 문자셋을 설정합니다.


값 생략 시 시스템의 문자셋이 적용됩니다.


특별히 문자셋을 변환할 필요가 있을 때만 설정하는 것을 권장합니다.

var arrRecvData;

arrRecvData = this.TCPClientSocket00.read( 1000 );
arrRecvData = this.TCPClientSocket00.read( 1000, 3 );
arrRecvData = this.TCPClientSocket00.read( 1000, 3, "utf-8" );

반환

Type

Description

Array

데이터의 수신 성공여부와 수신데이터를 배열형태로 반환합니다.


배열의 첫번째 원소에 데이터 수신여부를 Boolean 값으로 반환합니다.

배열의 두번째 원소에 수신된 데이터를 반환합니다.

참고

- 데이터 수신에 실패하면 onerror 이벤트가 발생합니다.

- 반환되는 배열의 두번째 원소는 데이터 수신에 성공하고 데이터가 존재하는 경우만 설정됩니다.

- 데이터를 줄단위로 수신하려면 readLine() 메소드를 사용하여야 합니다.

readLine

연결된 서버에서 줄단위로 데이터를 수신하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.readLine( nSize [, nTimeOut [, strCharSet]] )

파라미터

Parameters

Type

Description

nSize

Number

수신될 데이터의 최대 크기를 바이트 단위의 숫자로 설정합니다.


설정값은 수신될 데이터의 최대 크기로 적용되며 실제 수신된 데이터는 설정값보다 작을 수 있습니다.


0 이하값을 설정하면 메소드가 정상적으로 실행되지 않습니다.

nTimeOut

Number

데이터가 수신될 때까지 대기하는 시간을 초단위의 숫자로 설정합니다..


수신된 데이터에 줄바꿈 문자가 없을 경우 대기시간이 다시 적용되므로 값 설정에 주의하여야 합니다.


0 이하값을 설정하면 대기시간이 무한대로 적용됩니다.

값을 설정하지 않으면 0 으로 적용됩니다.

strCharSet

String

데이터가 수신될 때 적용될 문자셋을 설정합니다.


값 생략 시 시스템의 문자셋이 적용됩니다.


특별히 문자셋을 변환할 필요가 있을 때만 설정하는 것을 권장합니다.

var arrRecvData;

arrRecvData = this.TCPClientSocket00.readLine( 1000 );
arrRecvData = this.TCPClientSocket00.readLine( 1000, 3 );
arrRecvData = this.TCPClientSocket00.readLine( 1000, 3, "utf-8" );

반환

Type

Description

Array

데이터의 수신 성공여부와 수신데이터를 배열형태로 반환합니다.


배열의 첫번째 원소에 데이터 수신여부를 Boolean 값으로 반환합니다.

배열의 두번째 원소에 수신된 데이터를 반환합니다.

참고

- 데이터 수신에 실패하면 onerror 이벤트가 발생합니다.

- 반환되는 배열의 두번째 원소는 데이터 수신에 성공하고 데이터가 존재하는 경우만 설정됩니다.

- 정상적으로 수신된 데이터의 마지막은 줄바꿈 문자로 끝납니다.
   그러나, 아래의 이유로 수신된 데이터의 마지막이 줄바꿈 문자가 아닌 경우가 발생할 수 있습니다.
   > nSize 로 설정한 값보다 한 줄의 데이터가 큰 경우
   > 시간내에 데이터를 수신 받지 못한 경우
   > 서버와 연결이 끊긴 경우

- readLine() 메소드에서 nTimeOut 값은 데이터를 한번 수신하는데 대기하는 시간으로만 적용되지 않습니다.
   수신된 데이터에 줄바꿈 문자가 없을 경우 nTimeout 값은 다음 데이터를 대기하는 시간으로 여러번 재설정될 수 있습니다.
   따라서 nTimeOut 값이나 nSize 값을 너무 길게 설정하면 화면이 멈춘것처럼 보일 수 있으니 주의하셔야 합니다.

- 데이터를 바이트 단위로 수신하려면 read() 메소드를 사용하여야 합니다.

removeEvent

TCPClientSocket 에 선언된 특정 이벤트를 삭제하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.removeEvent( strEventID )

파라미터

Parameters

Type

Description

strEventID

String

TCPClientSocket 에서 삭제할 이벤트의 ID 를 문자열로 설정합니다.

var bResult = this.TCPClientSocket00.removeEvent( "onmove" );

반환

Type

Description

Boolean

이벤트 삭제에 성공하면 true 를 반환합니다.


이벤트 삭제에 실패하거나 선언되지 않은 이벤트 ID 설정 시 false 를 반환합니다.

참고

- Composite Component 와 같은 사용자 컴포넌트에서 특정 이벤트를 삭제할 때 사용하는 메소드입니다.

- 이벤트에 핸들러 함수가 정의되어 있을 경우 이벤트를 삭제할 수 없습니다.

- TCPClientSocket 에 특정 이벤트를 추가하려면 addEvent() 메소드를 사용하여야 합니다.

- TCPClientSocket 에 기본으로 선언되어 있는 이벤트 삭제 시 오동작 할 수 있으므로 주의하여야 합니다.

removeEventHandler

TCPClientSocket 의 이벤트에서 전달된 핸들러 함수를 제거하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.removeEventHandler( strEventID, objFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 제거할 이벤트의 ID를 설정합니다.

objFunc

Object

제거할 핸들러 함수를 오브젝트 형태로 설정합니다.

objTarget

Object

제거할 핸들러 함수가 정의된 영역을 설정합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.removeEventHandler( "onerror", this.TCPClientSocket_onerror, this);

반환

Type

Description

Number

핸들러 함수 제거에 성공하면 "1" 을 반환합니다.


핸들러 함수 제거에 실패하면 "0" 을 반환합니다.

참고

- 핸들러 함수가 제거되면 핸들러 함수의 인덱스가 "0" 번부터 재조정됩니다.

- 이벤트에 등록된 핸들러 함수를 모두 제거하려면 clearEventHandler() 메소드를 사용하여야 합니다.

removeEventHandlerLookup

TCPClientSocket 의 이벤트에 정의된 핸들러 함수에서 검색된 함수를 제거하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.removeEventHandlerLookup( strEventID, strFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 제거할 이벤트의 ID를 설정합니다.

strFunc

String

제거할 핸들러 함수의 이름을 문자열로 설정합니다.

objTarget

Object

제거할 핸들러 함수가 정의된 영역을 설정합니다.


해당 영역에 함수가 정의되지 않았다면 상위 영역으로 올라가며 검색을 합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.removeEventHandlerLookup( "onerror", "TCPClientSocket_onerror", this);

반환

Type

Description

Number

핸들러 함수 제거에 성공하면 "1" 을 반환합니다.


핸들러 함수 제거에 실패하면 "0" 을 반환합니다.

참고

- strFunc 이름의 함수를 objTarget 영역부터 상위로 올라가며 검색합니다.
   검색된 함수가 이벤트에 핸들러 함수로 추가되어 있다면 해당 핸들러 함수를 제거합니다.

- 핸들러 함수가 제거되면 핸들러 함수의 인덱스가 "0" 번부터 재조정됩니다.

- 이벤트에 등록된 핸들러 함수를 모두 제거하려면 clearEventHandler() 메소드를 사용하여야 합니다.

setEventHandler

TCPClientSocket 의 이벤트에서 첫번째 핸들러 함수를 변경하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.setEventHandler( strEventID, objFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 변경할 이벤트의 ID를 설정합니다.

objFunc

Object

기존 핸들러 함수를 대체할 함수를 오브젝트 형태로 설정합니다.

objTarget

Object

대체할 핸들러 함수가 정의된 영역을 설정합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.setEventHandler( "onerror", this.TCPClientSocket_onerror, this);

반환

Type

Description

Number

첫번째 핸들러 함수 변경에 성공하면 "0" 을 반환합니다.


첫번째 핸들러 함수 변경에 실패하면 "-1" 을 반환합니다.

참고

- 인덱스가 "0" 번인 핸들러 함수를 새로운 함수로 대체합니다.

- 인덱스가 "0" 번인 핸들러 함수가 없다면 "0" 번 인덱스에 대체할 함수를 핸들러 함수로 추가합니다.

setEventHandlerLookup

TCPClientSocket 의 이벤트에 정의된 첫번째 핸들러 함수를 검색된 함수로 변경하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.setEventHandlerLookup( strEventID, strFunc, objTarget )

파라미터

Parameters

Type

Description

strEventID

String

핸들러 함수를 변경할 이벤트의 ID를 설정합니다.

strFunc

Object

기존 핸들러 함수를 대체할 함수의 이름을 문자열로 설정합니다.

objTarget

Object

대체할 핸들러 함수를 검색할 영역을 설정합니다.


해당 영역에 함수가 정의되지 않았다면 상위 영역으로 올라가며 검색을 합니다.

this.TCPClientSocket00_onerror = function( obj:nexacro.TCPClientSocket,  e:nexacro.SocketErrorEventInfo)
{ // 수행할 스크립트 };

var nIndex = this.TCPClientSocket00.setEventHandlerLookup( "onerror", "TCPClientSocket_onerror", this);

반환

Type

Description

Number

첫번째 핸들러 함수 변경에 성공하면 "0"을 반환합니다.

첫번째 핸들러 함수 변경에 실패하면 "-1"을 반환합니다.

참고

- strFunc 이름의 함수를 objTarget 영역부터 상위로 올라가며 검색합니다.
   검색된 함수가 있다면 이벤트의 첫번째 핸들러 함수를 검색된 함수로 변경합니다.

- 인덱스가 "0" 번인 핸들러 함수를 검색된 함수로 대체합니다.

- 인덱스가 "0" 번인 핸들러 함수가 없다면 "0" 번 인덱스에 검색된 함수를 핸들러 함수로 추가합니다.

write

연결된 서버로 데이터를 송신하는 메소드입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

TCPClientSocket.write( strData [, strCharset] )

파라미터

Parameters

Type

Description

strData

String

연결된 서버로 송신 할 데이터를 설정합니다.

strCharset

String

연결된 서버로 송신 할 데이터의 문자셋을 설정합니다.


값을 설정하지 않으면 시스템의 문자셋이 설정됩니다.


특별히 데이터의 문자셋을 변환할 필요가 있을 때만 설정하는 것을 권장합니다.

var bSucc;
var bSucc = this.TCPClientSocket00.write( "Send Message" );
var bSucc = this.TCPClientSocket00.write( "Send Message", "utf-8" );

반환

Type

Description

Boolean

연결된 서버로 데이터 송신을 시작하면 "true" 를 반환합니다.


연결된 서버로 데이터 송신을 시작하지 못하면 "false" 를 반환합니다.

참고

- 데이터 송신에 성공하면 onsuccess 이벤트가 발생합니다.
   데이터 송신에 실패하면 onerror 이벤트가 발생합니다.

- write() 메소드를 실행하여 대용량 데이터를 송신하는 경우 패킷을 송신 가능한 크기로 나누어 송신합니다.
   이 때, 송신 후 남은 데이터가 있는 경우 onsuccess 이벤트가 여러번 발생할 수 있습니다.

이벤트

ondataarrived

연결된 서버에 수신 가능한 데이터가 있을 경우에 발생하는 이벤트입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

ondataarrived(obj:nexacro.TCPClientSocket,e:nexacro.SocketReceiveEventInfo);

파라미터

Parameters

Type

Description

obj

TCPClientSocket

Event가 발생한 Object.

e

SocketReceiveEventInfo

Event Object.

참고

- ondataarrived 이벤트는 수신 가능한 데이터가 있는 경우 1회만 발생하며 실제 데이터를 수신하지 않습니다.
  read(), readLine() 메소드를 실행하여 데이터를 직접 수신하여야 합니다.

- read(), readLine() 메소드를 실행하여 데이터를 수신하지 않으면 수신 가능한 데이터가 누적되어도 이벤트가 추가로 발생하지 않습니다.

- read(), readLine() 메소드를 실행하여 데이터를 수신한 후 수신 가능한 데이터가 남아 있으면 다시 ondataarrived 이벤트가 1회 발생합니다.

onerror

TCPClientSocket 에서 요청된 작업이 실패했을 때 발생하는 이벤트입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

onerror(obj:nexacro.TCPClientSocket,e:nexacro.SocketErrorEventInfo);

파라미터

Parameters

Type

Description

obj

TCPClientSocket

Event가 발생한 Object.

e

SocketErrorEventInfo

Event Object.

참고

- 이벤트가 발생한 원인은 EventInfo 의 statuscode 속성을 참조하여야 합니다.

onsuccess

TCPClientSocket 에서 요청된 작업이 성공했을 때 발생하는 이벤트입니다.

지원 환경

Desktop NRE

Desktop WRE

☑ Windows

☑ macOS

☐ Edge

☐ Chrome

☐ Safari

☐ Firefox

☐ Opera

Mobile NRE

Mobile WRE

☑ Android

☑ iOS/iPadOS

☐ Android

☐ iOS/iPadOS




문법

onsuccess(obj:nexacro.TCPClientSocket,e:nexacro.SocketEventInfo);

파라미터

Parameters

Type

Description

obj

TCPClientSocket

Event가 발생한 Object.

e

SocketEventInfo

Event Object.

참고

- onsuccess 이벤트는 비동기로 동작하므로 메소드 실행이 완료된 후에 발생합니다.

- write() 메소드를 실행하여 대용량 데이터를 송신하는 경우 패킷을 송신 가능한 크기로 나누어 송신합니다.
   이 때, 송신 후 남은 데이터가 있는 경우 onsuccess 이벤트가 여러번 발생할 수 있습니다.
   송신 후 남은 데이터가 있는지 여부는 EventInfo 의 bytesremain 속성을 참조하여야 합니다.