Web 发送图片消息, 移动端无法显示?

Web 发送图片消息, 移动端无法显示
发布时间: 2016-05-17 17:18

回答:

1、如果移动端为 IMKit, 发送图片消息时, 必须传入 content(图片 base64) 参数

var base64Str = '/9j/4AAQSBAAD/2wBDDBAYEBAQEB....';  // 压缩后的 base64 略缩图, 用来快速展示图片
var imageUri = 'https://www.rongcloud.cn/images/newVersion/log_wx.png';  // 上传到自己服务器的 url. 用来展示高清图片
var msg = new RongIMLib.ImageMessage({
    content: base64Str, 
    imageUri: imageUri
});
var conversationType = RongIMLib.ConversationType.PRIVATE;
var targetId = 'user1';  // 目标 Id
RongIMClient.getInstance().sendMessage(conversationType, targetId, msg, {
    onSuccess: function (message) {
        console.log('发送图片消息成功', message);
    },
    onError: function (errorCode) {
        console.log('发送图片消息失败', errorCode);
}});


2、传入的图片 base64 缩略图必须满足以下条件:

    (1). 略缩图(content 字段)必须是 base64 字符串, 类型必须为 jpg

    (2). base64 略缩图必须不带前缀

    (3). base64 字符串大小不可超过 100 k


注意: 可通过 FileReader 或者 canvas 对图片进行压缩, 生成压缩后的 base64 字符串