Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Зная sessionId подключенного клиента, можно направить ему произвольный объект с данными.

Отправка данных на сервер методом sendData / OnDataEvent

Клиент может отправить произвольный объект с помощью вызова  прямого метода sendData() - шаг 1.

На web-сервере будет вызван REST-метод /OnDataEvent - шаг 2. В результате, клиент получит статус SESSION_STATUS.SEND_DATA_STATUS ACCEPTED - шаг 4.

 

Пример:

2

3

Code Block
languagejs
themeRDark
POST /rest/my_api/OnDataEvent HTTP/1.1
Accept: application/json, application/*+json
Content-Type: application/json;charset=UTF-8
User-Agent: Java/1.8.0_111
Host: 192.168.1.101
Connection: keep-alive
Content-Length: 218

{
    "nodeId":"Hw47CFMBEchVOpBMDr29IxjudnJ1sjOY@192.168.1.101",
    "appKey":"defaultApp",
    "sessionId":"/192.168.1.102:55839/192.168.1.101:8443",
    "operationId":"d1999750-fde9-11e6-9f1b-913210792931",
    "payload":{
        "message":"hello"
    }
}
}
Code Block
languagejs
themeRDark
HTTP/1.1 200 OK
Date: Tue, 28 Feb 2017 19:12:14 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Content-Length: 220
Connection: close
Content-Type: application/json

{
    "nodeId":"Hw47CFMBEchVOpBMDr29IxjudnJ1sjOY@192.168.1.101",
    "appKey":"defaultApp",
    "sessionId":"\/192.168.1.102:55839\/192.168.1.101:8443",
    "operationId":"d1999750-fde9-11e6-9f1b-913210792931",
    "payload":{
        "message":"hello"
    }
}

Обработка ошибок

 Для включения такого поведения, нужно передать restOnError:FAIL в restClientConfig для метода OnDataEvent при установке соединения методом connect.

Клиент может отправить произвольный объект с помощью вызова  прямого метода sendData() - шаг 1. На web-сервере будет вызван REST-метод /OnDataEvent - шаг 2. В результате, клиент получит статус SESSION_STATUS.SEND_DATA_STATUS FAILED - шаг 4.

 

Пример:

2

3

Code Block
languagejs
themeRDark
POST /rest/my_api/OnDataEvent HTTP/1.1
Accept: application/json, application/*+json
Content-Type: application/json;charset=UTF-8
User-Agent: Java/1.8.0_111
Host: 192.168.1.101
Connection: keep-alive
Content-Length: 218

{
    "nodeId":"Hw47CFMBEchVOpBMDr29IxjudnJ1sjOY@192.168.1.101",
    "appKey":"defaultApp",
    "sessionId":"/192.168.1.102:25789/192.168.1.101:8443",
    "operationId":"d0149310-fdeb-11e6-9b58-9509528e5d66",
    "payload":{
        "message":"hello"
    }
}
Code Block
languagejs
themeRDark
HTTP/1.1 403 Forbidden
Date: Tue, 28 Feb 2017 19:26:30 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.3.3
Content-Length: 0
Connection: close
Content-Type: text/html; charset=UTF-8


Отправка данных подключенному клиенту методом sendData

Можно отправить подключившемуся клиенту прямое сообщение http://host:9091/RESTCallback/sendData

...

Клиент получит событие SESSION_STATUS.APP_DATA