终端聊天应用终端聊天应用
我的提交概述 终端内一个非常简单的聊天应用程序。该应用程序使用 pubsub 将消息发布到其他频道,使用 Golang 实现,这是我最近学习的编程语言。 投稿类别: 古怪的通配符 使用的语言 Go 1.18 用于开发应用程序。 使用bubbletea框架制作终端ui。 链接到代码 扣篮/tchat 终端聊天应用 带有 Golang 和 Redis Pub/Sub 的终端内的简单聊天应用程序。 工作
我的提交概述
终端内一个非常简单的聊天应用程序。该应用程序使用 pubsub 将消息发布到其他频道,使用 Golang 实现,这是我最近学习的编程语言。
投稿类别:
- 古怪的通配符
使用的语言
-
Go 1.18 用于开发应用程序。
-
使用bubbletea框架制作终端ui。
链接到代码
扣篮/tchat
终端聊天应用
带有 Golang 和 Redis Pub/Sub 的终端内的简单聊天应用程序。
工作原理
数据的存储方式:
-
聊天数据存储为key
-
对于每个频道内容,
channel:
为前缀键,后跟频道名称。 -
对于每条消息内容,
message:
为前缀键,后面是json格式的channel-name
和message-data
。
数据是如何访问的:
- 下面是使用 Go Redis 访问频道消息的示例代码:
# 获取频道的消息
ctx :u003d context.Background()
iter :u003d redis.Client.Scan(ctx, 0, fmt.Sprintf("%s%s*", messagePrefix, m.channel), 0).Iterator()
var 消息 [] 字符串
对于 iter.Next(ctx) {
rawMsg :u003d iter.Val()
rawMsg \u003d strings.Replace(rawMsg, fmt
...
进入全屏模式 退出全屏模式
在 GitHub 上查看
其他资源/信息
没有任何
合作者
@dunkbing
更多推荐
所有评论(0)