network


doPost

BizApp과 Hub 서버와의 데이터 통신 기능을 제공한다.
서버설정 값에 의해 암호화 통신기능도 제공한다. (서버 설정은 op 에서 관리한다.)

options

필드필드설명
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message header와 payload로 구성되며 서버로 전송되는 실제 패킷. 개발시에는 서버와 비즈앱간에 합의된 규격서를 기반으로 작성된다.
header패킷 공통 정보
payload전송 데이터
   

successCallback

필드필드필드설명
result  doPost 성공 객체
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message 응답 패킷의 내용
header패킷의 공통정보
payload개별 패킷 내용
    

errorCallback

필드필드필드필드설명
e   doPost 실패 객체
context  서버로 데이터 전송에 필요한 정보
targetName 서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory 서비스 카테고리
serviceName 서비스 이름
message  응답 패킷의 내용
error  
code상세 오류 코드
message오류 메세지
details상제 오류 메세지 (optional)
     

Error Code

코드값설명
E00000서버모듈에서 작성한 오류
E10000doPost 작업중 런터임에서 발생한 오류
E10001서버와의 connection 오류
E10002응답 오류 (HTTP 200 OK를 제외한 응답을 오류 처리)
  

Example

var options = {
    "context": {
        "targetName": "hub1",
        "serviceCategory": "notice",
        "serviceName": "getNotice"
    },
    "message": {
        "header": {},
        "payload": {
            "pageNumber": 1,
            "rowsPerPage": 10
        }
    }
};

hone.channel.execute('Network', 'doPost', [options],
   function(result){
       // success callback
       alert(JSON.stringify(result));
    },
   function(e) {
       // error callback
       alert(JSON.stringify(e));
    }
);

Example 은 단순한 사용 예 이며 실제 동작을 위해서는 Hub 개발이 필요 하다

Result

Network Plugin 은 Hub 와의 통신이 주로 이루어지며 그 중 한 예인 getNotice 의 결과를 예제로 기입 한다. 

{
   "context": {
       "targetName": "hub1",
       "serviceCategory": "notice",
       "serviceName": "getNotice"
    },
   "message": {
       "header": {},
       "payload": {
           "totalNumber": "2",
           "currentPage": "1",
           "rows": [{
               "imageUri": "http://icon.daumcdn.net/w/c/12/11/10192021148946703.png",
               "postedAt": "2013-03-22EDT12:56:35",
               "contents": "첫번째 공지사항입니다.",
               "link": "http://www.daum.net",
               "id": "1",
               "title": "공지사항1"
            }, {
               "imageUri": "http://icon.daumcdn.net/w/c/12/11/10192021148946703.png",
               "postedAt": "2013-03-23EDT12:56:35",
               "contents": "두 번째 공지사항입니다.",
               "link": "http://www.naver.com",
               "id": "2",
               "title": "공지사항2"
            }]
        }
    }
}

오류 발생 시에는 아래와 같이 전달 된다. 

{
   "context": {
       "targetName": "test",
       "serviceCategory": "testCategory",
       "serviceName": "errorTest"
    },
   "message": {
       "error": {
           "code": "E32000",
           "message": "Attempt to invoke virtual method 'java.lang.String honemobile.client.configuration.child.AbstractServerConfig.getServerApplicationPath()' on a null object reference"
        },
       "header": {}
    }
}

doUpload

BizApp과 Hub 서버와의 파일 업로드 기능을 제공한다.

options

필드필드설명
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message header와 payload로 구성되며 서버로 전송되는 실제 패킷. 개발시에는 서버와 비즈앱간에 합의된 규격서를 기반으로 작성된다.
header패킷 공통 정보
payload전송 데이터
   

successCallback

필드필드필드설명
result  doUpload 성공 객체
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message 응답 패킷의 내용
header패킷의 공통정보
payload개별 패킷 내용
    

errorCallback

필드필드필드필드설명
e   doUpload 실패 객체
context  서버로 데이터 전송에 필요한 정보
targetName 서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory 서비스 카테고리
serviceName 서비스 이름
message  응답 패킷의 내용
errorcode상세 오류 코드
message오류 메세지
details상제 오류 메세지 (optional)
     

Example

var options = {
   "context": {
       "targetName": "hub1",
       "serviceCategory": "util",
       "serviceName": "fileUpload"
    },
   "message": {
       "header": {},
       "payload": {
           "userId": "user",
           "key2": "value",
           "files": [ "/test.png", "/myfiles/test1.png" ]
        }
    }
};

hone.channel.execute('Network', 'doUpload', [options],
   function(result){
       // success callback
       alert(JSON.stringify(result));
    },
   function(e) {
       // error callback
       alert(JSON.stringify(e));
    }
);

Example 은 단순한 사용 예 이며, 업로드를 위해서는 Hub 개발이 필요 하다.

Result

{
   "context": {
       "targetName": "hub1",
       "serviceCategory": "util",
       "serviceName": "fileUpload"
    },
   "message": {
       "header": {},
       "payload": {
           "requestPayload": {
               "userId": "user",
               "key2": "value",
               "mulitpartFiles": ["/sdcard/test.png"]
            },
           "file1": "test.png"
        }
    }
}

doDownload

BizApp과 Hub 서버와의 파일 다운로드 기능을 제공한다.

options

필드필드설명
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message header와 payload로 구성되며 서버로 전송되는 실제 패킷. 개발시에는 서버와 비즈앱간에 합의된 규격서를 기반으로 작성된다.
header패킷 공통 정보
payload전송 데이터
   

successCallback

필드필드필드설명
result  doDownload 성공 객체
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message 응답 패킷의 내용
header패킷의 공통정보
payload개별 패킷 내용
    

errorCallback

필드필드필드필드설명
e   doDownload 실패 객체
context  서버로 데이터 전송에 필요한 정보
targetName 서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory 서비스 카테고리
serviceName 서비스 이름
message  응답 패킷의 내용
errorcode상세 오류 코드
message오류 메세지
details상제 오류 메세지 (optional)
     

Example

var options = {
   "context": {
       "targetName": "hub1",
       "serviceCategory": "util",
       "serviceName": "fileDownload"
    },
   "message": {
       "header": {},
       "payload": {
           "userId": "user",
           "key2": "value",
           "files": [ "/test.png", "/myfiles/test1.png" ]
        }
    }
};

hone.channel.execute('Network', 'doDownload', [options],
   function(result){
       // success callback
       alert(JSON.stringify(result));
    },
   function(e) {
       // error callback
       alert(JSON.stringify(e));
    }
);

Example 은 단순한 사용 예 이며, 다운로드를 위해서는 Hub 개발이 필요 하다.


doUploadWithProgress

BizApp과 Hub 서버와의 파일 업로드 기능을 제공한다.

options

필드필드설명
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message header와 payload로 구성되며 서버로 전송되는 실제 패킷. 개발시에는 서버와 비즈앱간에 합의된 규격서를 기반으로 작성된다.
header패킷 공통 정보
payload전송 데이터
   

successCallback

필드필드필드설명
result  doUploadWithProgress 성공 객체
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message 응답 패킷의 내용
header패킷의 공통정보
payload개별 패킷 내용
    

errorCallback

필드필드필드필드설명
e   doUploadWithProgress 실패 객체
context  서버로 데이터 전송에 필요한 정보
targetName 서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory 서비스 카테고리
serviceName 서비스 이름
message  응답 패킷의 내용
errorcode상세 오류 코드
message오류 메세지
details상제 오류 메세지 (optional)
     

Example 

var options = {
   "context": {
       "targetName": "hub1",
       "serviceCategory": "util",
       "serviceName": "fileUpload"
    },
   "message": {
       "header": {},
       "payload": {
           "userId": "user",
           "key2": "value",
           "files": [ "/test.png", "/myfiles/test1.png" ]
        }
    }
};

hone.channel.execute('Network', 'doUploadWithProgress', [options],
   function(result){
       // success callback
       alert(JSON.stringify(result));
    },
   function(e) {
       // error callback
       alert(JSON.stringify(e));
    },
   function(progress) {
        console.log(JSON.stringify(progress));
    }
);

Example 은 단순한 사용 예 이며, 업로드를 위해서는 Hub 개발이 필요 하다.


doDownloadWithProgress

BizApp과 Hub 서버와의 파일 다운로드 기능을 제공한다.

options

필드필드설명
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message header와 payload로 구성되며 서버로 전송되는 실제 패킷. 개발시에는 서버와 비즈앱간에 합의된 규격서를 기반으로 작성된다.
header패킷 공통 정보
payload전송 데이터
   

successCallback

필드필드필드설명
result  doDownloadWithProgress 성공 객체
context 서버로 데이터 전송에 필요한 정보
targetName서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory서비스 카테고리
serviceName서비스 이름
message 응답 패킷의 내용
header패킷의 공통정보
payload개별 패킷 내용
    

errorCallback

필드필드필드필드설명
e   doDownloadWithProgress 실패 객체
context  서버로 데이터 전송에 필요한 정보
targetName 서버이름, op가 미리 정의되어 있어야 한다.
serviceCategory 서비스 카테고리
serviceName 서비스 이름
message  응답 패킷의 내용
errorcode상세 오류 코드
message오류 메세지
details상제 오류 메세지 (optional)
     

Example

var options = {
   "context": {
       "targetName": "hub1",
       "serviceCategory": "util",
       "serviceName": "fileDownload"
    },
   "message": {
       "header": {},
       "payload": {
           "userId": "user",
           "key2": "value",
           "files": [ "/test.png", "/myfiles/test1.png" ]
        }
    }
};

hone.channel.execute('Network', 'doDownloadWithProgress', [options],
   function(result){
       // success callback
       alert(JSON.stringify(result));
    },
   function(e) {
       // error callback
       alert(JSON.stringify(e));
    },
   function(progress) {
        console.log(JSON.stringify(progress));
    }
);

Example 은 단순한 사용 예 이며, 다운로드를 위해서는 Hub 개발이 필요 하다.