Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程

这篇具有很好参考价值的文章主要介绍了Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

仓库地址

Github:https://github.com/palp1tate/WebsocketDemo
欢迎star!😎

项目简介

利用 Gin+WebSocket 实现的在线聊天室Demo项目,支持加入/离开聊天室广播、给其他用户发送消息等。

如何使用

进入项目根目录,执行命令go run .命令,结果如下:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

可以看到们的HTTP服务已经启动成功并运行在了8080端口上。

接下来打开接口调试软件Apifox,也可以使用在线的 WebSocket 接口调试网站。

进入Apifox,新建WebSocket接口:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

输入query参数user,这个参数为必选,表示是谁加入了聊天室。

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

输入接口地址ws://127.0.0.1:8080/chat,点击连接:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

结果如下:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

新建多个WebSocket接口,可以看到一有新成员加入,其他成员都会收到广播通知:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

当有人离开聊天室时,其他人也会受到下线通知:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

接下来我们将该用户重新上线,同时演示如何给其他成员发消息,需要将发送的消息格式设置为json

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

消息的正确格式如下:

{
    "toUser": "赵丽颖",
    "content": "你真棒"
}

toUser代表给谁发消息,content代表发消息的内容。这两者有任何一者为空,均会收到提示内容缺失的消息。

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

点击发送,可以看到收信人成功收到消息:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

如果该接收人不在线,发信人也会收到相应的提示信息:

Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程,Go,# Gin,gin,websocket,go

WebSocketDemo算是一个比较经典的用于学习WebSocket的实战项目了吧,所有的介绍就到这里,欢迎 star!文章来源地址https://www.toymoban.com/news/detail-858673.html

到了这里,关于Gin+WebSocket实战——在线聊天室WebSocketDemo详细使用教程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于 SpringBoot+WebSocket 无DB实现在线聊天室(附源码)

    0.1 样例展示 0.2 源码地址 GitHub:https://github.com/ShiJieCloud/web-chat Gitee:https://gitee.com/suitbaby/web-chat GitCode:I’m Jie / web-chat · GitCode 1.1 HTTP 常用的 HTTP 协议是一种无状态的、无连接的、单向的应用层协议。它采用了请求/响应模型。通信请求只能由客户端发起,服务端对请求做出

    2024年02月05日
    浏览(32)
  • 【WebSocket项目实战】聊天室(前端vue3、后端spring框架)

    最近我学习了WebSocket,为了更好地掌握这一技术,我决定通过做一个项目来巩固学习成果。在这个项目中,我将使用JavaScript和WebSocket来实现实时通信,让客户端和服务器端能够实时地传递和接收数据。通过这个项目,我希望能够更深入地了解WebSocket的工作原理,并且能够在实

    2024年02月04日
    浏览(29)
  • websocket网页聊天室

    实现websocket网页聊天室可以遵循以下步骤: 创建一个基于浏览器的WebSocket客户端,使用JavaScript。可以使用HTML5的WebSocket API。 编写服务器端的WebSocket应用程序,可以使用Node.js和WebSocket模块。 在服务器端创建一个WebSocket服务器,监听客户端请求,并将客户端与服务器端连接起

    2024年02月06日
    浏览(28)
  • websocket项目 聊天室

    1.项目概述 这个项目是一个基本的实时聊天应用,适用于小型团队或群体。提供了多个聊天室供用户选择。可以通过该代码进行进一步的扩展和定制,例如添加聊天机器人、改进界面等。 2.技术栈 flask,boostrapt,websocket,twemoji 3.项目结构 4.关键特点 Web框架: 项目使用 Flask

    2024年01月20日
    浏览(30)
  • Django实现websocket聊天室

    WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器双向通信,即允许服务器主动发送信息给客户端。因此,在WebSocket中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输,客户端和服务器之间的数据交换变

    2023年04月23日
    浏览(29)
  • 【WebSocket】SpringBoot整合WebSocket实现聊天室(一)

    目录 一、准备 1、引入依赖 2、创建配置类 二、相关注解 首先我们需要在项目中引入依赖,有两种方式。第一种我们可以在创建Spring Boot项目时搜索WebSocket然后勾选依赖 第二种是我们可以直接在项目的pom.xml文件中插入以下依赖 我们需要进行如下配置 ServerEndpointExporter 是一个

    2024年02月13日
    浏览(27)
  • django websocket实现聊天室功能

    注意事项channel版本 django2.x 需要匹配安装 channels 2 django3.x 需要匹配安装 channels 3 Django 3.2.4 channels 3.0.3 Django 3.2.* channels 3.0.2 Django4.2 channles==3.0.5 是因为最新版channels默认不带daphne服务器 直接用命令 python manage.py runsever 默认运行的是wsgi ,修改,删除settings中的wsgi,都不能正确运

    2024年01月22日
    浏览(34)
  • Java+Vue实现聊天室(WebSocket进阶-聊天记录)

    WebSocket 是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服

    2024年02月11日
    浏览(35)
  • springboot+websocket实现简单的聊天室

    HTML HTML是创建和构造网页的标准标记语言。它使用一组标记标签描述网页上的内容结构。HTML文档由HTML元素的嵌套结构组成,每个元素由尖括号( )括起的标签表示。这些元素定义了网页的各个部分,如标题、段落、图像、链接、表单等。 JavaScript JavaScript是一种高级、解释性

    2024年01月21日
    浏览(43)
  • webSocket 聊天室 node.js 版

    全局安装vue脚手架  npm install @vue/cli -g 创建 vue3 + ts 脚手架  vue create vue3-chatroom src 同级目录下建 server:   核心代码: 完整代码:

    2024年02月12日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包