7.6. 标记通知为已读
标记通知为已读
我们还没有标记通知数据为已读,有些同学可能会在 消息通知列表
接口中将所有未读消息标记为已读,只要调用了列表接口,就意味着消息已读。
这么做看似没有什么问题,但是违背了一些原则,也带来了一些问题。回忆一下 Github 的 Restful HTTP API 设计分解 这一节我们提到了 GET 是安全的请求。
另外需要注意的是,GET 请求是安全的,不允许通过 GET 请求改变(更新或创建)资源。
消息通知列表
接口是 GET 请求,不应该在这时候改变资源数据,而且客户端可能会有其他的方式标记已读,例如有个按钮 标记所有通知为已读
。我们需要让接口符合规范,而且更加通用,所以一般需要客户端主动调用接口,来标记消息已读。
1. 增加路由
routes/api.php
.
.
.
// 通知统计
$api->get('user/notifications/stats', 'NotificationsController@stats')
->name('...