WebSocket

注: 在weex端,接入chameleon客户端sdk之后才可以使用该方法

initSocket

该方法传入一个url,返回一个WebSocket实例

参数

参数类型说明
urlString开发者服务器 ws 接口地址

返回值

返回WebSocket实例

举例

假设将调用cml.initSocket返回的WebSocket实例命名为ws,则ws上具有的方法如下:

  • ws.send(data): 通过WebSocket连接向服务端发送数据,data支持字符串和对象
  • ws.close(): 关闭WebSocket连接
  • ws.onopen(): 监听WebSocket连接打开事件
  • ws.onclose(): 监听WebSocket连接关闭事件
  • ws.onmessage(): 监听WebSocket接收到服务器的消息事件
  • ws.onerror(): 监听WebSocket错误事件
  1. let ws = cml.initSocket('ws://172.22.137.223:3333');
  2. ws.onopen(() => {
  3. cml.showToast({
  4. message: 'socket connected...',
  5. duration: 1000
  6. });
  7. setTimeout(() => {
  8. ws.send('hello cml socket');
  9. }, 2000);
  10. });
  11. ws.onmessage(res => {
  12. cml.showToast({
  13. message: 'receive from server: ' + res.data,
  14. duration: 1000
  15. })
  16. ws.send({
  17. keyword:'socket传递复杂类型',
  18. content: 'hello cml socket',
  19. arr: ['test1', 12, {}]
  20. })
  21. });
  22. ws.onerror(err => {
  23. console.error(err)
  24. });
  25. ws.onclose(() => {
  26. cml.showToast({
  27. message: 'socket closed...'
  28. })
  29. });
  30. setTimeout(() => {
  31. ws.close();
  32. }, 20000);