golang+vue3开发的一个im应用
这是一個开源的前后端分离的IM网页应用。



简单的功能
- 支持微博登录
- 端对端消息推送、图片发送、表情包
- 语音功能
- 视频功能
- 支持离线消息推送
- 创建群聊
- 群聊消息推送
- 好友功能
- 响应式的前端界面支持pc与h5【仿网页微信UI】
线上地址:https://im.pltrue.top/
开源了
服务端:https://github.com/pl1998/go-im
web端:https://github.com/pl1998/web-im-app
有兴趣可以点个star,后面会慢慢完善。
golang+vue3开发的一个im应用的更多相关文章
- Sublime Text3 + Golang搭建开发环境
Sublime Text3 + Golang搭建开发环境 http://blog.csdn.net/aqiang912/article/details/46775409 1.安装git 因为golan ...
- 为什么golang的开发效率高(编译型的强类型语言、工程角度高、在开发上的高效率主要来自于后发优势,编译快、避免趁编译时间找产品妹妹搭讪,既是强类型语言又有gc,只要通过编译,非业务毛病就很少了)
作者:阿猫链接:https://www.zhihu.com/question/21098952/answer/21813840来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出 ...
- 从零开始使用 Webpack 搭建 Vue3 开发环境
从零开始使用 Webpack 搭建 Vue3 开发环境 创建项目 首先需要创建一个空目录,在该目录打开命令行,执行 npm init 命令创建一个项目,这个过程会提示输入一些内容,完成后会自动生成一个 ...
- 基于gin的golang web开发:路由
Gin是一个用Golang编写的HTTP网络框架.它的特点是类似于Martini的API,性能更好.在golang web开发领域是一个非常热门的web框架. 启动一个Gin web服务器 使用下面的 ...
- 基于gin的golang web开发:路由二
在基于gin的golang web开发:路由中我们介绍了Gin的路由和一些获取链接中参数的方法,本文继续介绍其他获取参数的方法. 文件上传 在web开发中文件上传是一个很常见的需求,下面我们来看一下基 ...
- 基于gin的golang web开发:模型绑定
在前两篇文章介绍路由的时候,我们了解到gin可用通过类似DefaultQuery或DefaultPostForm等方法获取到前端提交过来的参数.参数不多的情况下也很好用,但是想想看,如果接口有很多个参 ...
- 基于gin的golang web开发:模型验证
Gin除了模型绑定还提供了模型验证功能.你可以给字段指定特定的规则标签,如果一个字段用binding:"required"标签修饰,在绑定时该字段的值为空,那么将返回一个错误.开发 ...
- 基于gin的golang web开发:访问mysql数据库
web开发基本都离不开访问数据库,在Gin中使用mysql数据库需要依赖mysql的驱动.直接使用驱动提供的API就要写很多样板代码.你可以找到很多扩展包这里介绍的是jmoiron/sqlx.另外还有 ...
- 基于gin的golang web开发:使用数据库事务
在前文介绍访问数据库时介绍了github.com/jmoiron/sqlx包,本文基于这个包使用数据库事务. defer 在使用数据库事务之前,首先需要了解go语言的defer关键字.defer是go ...
- 基于gin的golang web开发:mysql增删改查
Go语言访问mysql数据库需要用到标准库database/sql和mysql的驱动.标准库的Api使用比较繁琐这里再引入另一个库github.com/jmoiron/sqlx. go get git ...
随机推荐
- Go 应用程序使用 dockerfile multi-stage 的问题
场景重现 一个简单的go应用,准备通过docker部署,为了减少运行时的镜像和容器体积,使用了multi-stage构建: # dockerfile 大致如下 # 一级构建使用带golang环境的镜像 ...
- 掌握FastAPI与Pydantic的跨字段验证技巧
title: 掌握FastAPI与Pydantic的跨字段验证技巧 date: 2025/04/01 00:32:07 updated: 2025/04/01 00:32:07 author: cmd ...
- Python3工具_C段扫描工具_主机存活探测初始
之前搞了多线程 然后基于多线程写了个C段主机存活探测工具 扫描主函数 def sub(): global num num=0 while not q.empty(): threadLock.acqui ...
- Ubuntu 使用crontab定时备份log
rsyslog 在Linux上,默认情况下,所有日志文件都位于/var/log目录下,有几种类型的日志文件存储不同的消息,可以是cron,内核,安全性,事件,用户,这些日志文件大多由rsyslog服务 ...
- 27.7K star!这个SpringBoot+Vue人力资源管理系统,让企业开发事半功倍!
嗨,大家好,我是小华同学,关注我们获得"最新.最全.最优质"开源项目和高效工作学习方法 "只需一个脚手架,轻松搭建企业级人事管理系统!" 微人事(vhr)是一款 ...
- 四十种AI编程工具,让你码字如飞
用过AI编程工具的都知道,这玩意儿虽说还有待完善,但是确实能提高效率啊,真香啊. 是这样的,最近一个同学离职,我临时接手了他的BI数据后台,我一个不会前端的人,使用AI编程工具,发送简单的指令,竟然使 ...
- 工具分享 | SBSCAN 一款专注于Spring框架的渗透测试工具
0x00 工具介绍 SBSCAN是一款专注于spring框架的渗透测试工具,可以对指定站点进行springboot未授权扫描/敏感信息扫描以及进行spring相关漏洞的扫描与验证. 0x01 下载链 ...
- 漏洞预警 | Apache NiFi信息泄露漏洞
0x00 漏洞编号 CVE-2024-56512 0x01 危险等级 中危 0x02 漏洞概述 Apache NiFi是一个强大的.易于使用的数据集成平台,旨在自动化和管理数据流,尤其是在大数据环境中 ...
- 【MOOC】华中科技大学计算机组成原理慕课答案-第四章-存储系统(二)
待整理. 单选 1 32位处理器的最大虚拟地址空间为 A. 2G B. 8G C. 16G √D. 4G 2 在虚存.内存之间进行地址变换时,功能部件 ( )将地址从虚拟(逻辑)地址空间映射到物理地址 ...
- C#结构体布局规则
以下两个结构体,虽然字段完全一模一样,但因为Pack方式不同,导致它们实际占用内存大小是不一样的! [StructLayout(LayoutKind.Sequential,Pack =1)]//无填充 ...