根据一个网站提供在基础聊天API开发的一个前端
可以将消息加密发送,并每次增量式获取最新的消息,支持使用markdown,通过转义禁止html
可以发送文件,图片,表情包等多样的消息
可以在UI中经行新建群聊、离开群聊、添加/成员、禁言、设置/取消管理员(仅群主)、转让群主等多样操作
拥有数十钟不同的css主题
退出时自动最小化到系统托盘
1.在网页加载时先从本地appdata读取之前存储的样式,用户和聊天数据,并每隔500ms增量式获取最新信息,并同步保存到appdata并且更新渲染
2.最开始会单独获取每个对象的消息并单独存储,发现这样非常浪费网络等资源,造成卡顿,改为一起获取存储
3.问题1:原生API不支持文件上传,并且消息长度限制10KB,不能通过base64上传发送
解决:方法使用一个gitlab实例的项目API,在这里面上传并保存消息,直接发送网址,然后对方再通过API下载
问题2:electron直接写js完全没有保密性,asar包可以被解
解决方法:使用electron-vite,把重要信息比如API和加密密钥的代码编译为二级制jsc,大大提高反编译难度