问题描述
else里面的我可以增加,但是:this.context.stropheConn.send(dom); 中如果报错了,会触发onerror事件,这个事件是在哪里订阅的?
解决方案
重发消息功能的实现在于发送失败时要知道哪条消息失败,index.html里的onError方法是没有消息ID的,默认只有type和msg两个字段,msg显示的是错误描述信息。要确定哪条消息,需要传递消息标识,在easemob.im.js中的sendCommand()这个方法中加上消息ID的字段,在onError里可以获取到。 sendCommand()发消息时的ID是通过时间戳来生成的id.可以将消息做持久化存储,发送失败后,重新装载消息进行重发即可。
解决方案二:
id 从哪里取到啊?
解决方案三:
@hawk 什么id, 这个msgid.dom.id ?
解决方案四:
在easemob.im.js中有个connection.prototype.getUniqueId这个是根据时间戳生成id的方法,获取后加到sendCommand()这个方法里的onError中即可。到index.html页面的回调里就可以取到发送失败的消息ID了。
解决方案五:
哦
解决方案六:
加我微信a1870004030
时间: 2024-11-05 08:53:14