最近公司要做webim项目,由于需要收集所有用户相关的数据 ,和定制功能,决定自己开发webim。不使用现成的解决方案。
但是我们没做过聊天项目的经验,特别是对于同一条消息里发送 文本+多张图片时,如何发送,服务端又是如何存储的?假设图片很大,base64不可取。并且还可能有多张图片。
我想到的是:前端先上传好图片,然后把URL或占位符插入进文本里,一次性发送消息到服务器。这样直接存储到DB。比如一条消息结构是:“聊天内容聊天内容聊天内容聊天内容聊天内容聊天内容[face:01],聊天内容聊天内容聊天内容[img:http://xxxxx.xxx.cn/xxx.jpg]” ,这样传过来服务端后直接存储。
如果前端工作量大,要服务端来拼接消息结构,不知如何实现?
希望有做过IM项目的大佬指教下,多谢。另外我们打算使用基于SWOOLE的 ESD框架(SwooleDistributed项目与EasySwoole的合并框架)来开发,也不知适合不适合。