悠家娱乐|| Linux 中国,构建一个即时消息应用(四):消息( 三 )
首先 , 它以只读模式开始一个SQL事务 。 检查参与者是否存在 , 并查询所有消息 。 在每条消息中 , 我们使用当前经过身份验证的用户ID来了解用户是否拥有该消息(mine) 。 然后 , 它提交事务 , 在goroutine中更新参与者messages_read_at并以消息响应 。
读取消息
该端点处理对/api/conversations/{conversationID}/read_messages的POST请求 。 没有任何请求或响应主体 。 在前端 , 每次有新消息到达实时流时 , 我们都会发出此请求 。
funcreadMessages(whttp.ResponseWriter,r*http.Request){ctx:=r.Context()authUserID:=ctx.Value(keyAuthUserID).(string)conversationID:=way.Param(ctx,''conversationID'')iferr:=updateMessagesReadAt(ctx,authUserID,conversationID);err!=nil{respondError(w,fmt.Errorf(''couldnotupdatemessagesreadat:%v'',err))return}w.WriteHeader(http.StatusNoContent)}
它使用了与更新参与者messages_read_at相同的函数 。
到此为止 。 实时消息是后台仅剩的部分了 。 请等待下一篇文章 。
源代码
via:nicolasparada.netlify.com
作者:NicolásParada选题:lujun9972译者:gxlct008校对:wxy
本文由LCTT原创编译 , Linux中国荣誉推出
推荐阅读
- 薄情娱乐咖|还能登上人生巅峰,贾诩简直就是张绣的“人生导师”,打一手烂牌
- 悠家娱乐|Pro渲染图,前辈泪流满面加速降价,曝光华为Mate40
- 悠家娱乐|前辈即将残忍让路价崩,曝光华为麒麟9000的跑分已经出来
- 忧家娱乐|前辈闻声价崩疯抢模式,曝光华为mate40后置摄像头排布
- 娱乐那些事儿|蓝牙耳机挂脖式好还是无线好?挂脖式性价比蓝牙耳机排名
- 悠家娱乐|前辈提前价崩简直厉害,我们期待的就剩华为Mate40了
- cnBeta|研究人员担心BleedingTooth蓝牙漏洞给Linux系统带来风险
- 悠家娱乐|一加8无奈下跌黯然神伤,骁龙865版一加8T闪亮登场
- 忧家娱乐|用鸡毛掸子伪装,苏联冷战时期“发射器猎人”模式射频信号追踪器
- 忧家娱乐|2017 年抵御了史上最大的 DDoS 攻击,谷歌称