博客开发日志 - day9
博客开发日志 - day9
web端
1. 完善了提交表单时按钮button状态

2. 修改密码时需2次确认密码
3. 使用zod的superRefine替代zod.union(这玩意儿写起来反而更加麻烦了)
服务端
今天主要的工作量还是在服务端上,昨天是先判断数据是否存在,如果不存在就报错,这样的话,会导致请求一次接口,出现2次甚至3次查询,今天优化了这块的逻辑,修改或者删除时,直接通过返回的受影响的行数来获取错误状态。
另外还加上了根据pgx的错误信息来判断数据库中唯一列的错误信息。这一点我本来想的方法还是通过查询数据,新增时传入唯一列的值,修改时传入唯一列的值加上自身id,如果能查询出结果,表示有重复的数据,后面询问ai发现可以通过报错信息定位到具体的列,少一次查询也挺方便的

明天的话可能得想办法优化一下鉴权的问题了,现在token签发后,即使删除了数据,或者修改了密码,token只要没有过期就会一直有效,无法主动将它失效,这是jwt的痛点,重构之前的代码,我是将token存在了redis里面,这似乎违背了token无状态的规则,明天研究一下refresh token,这玩意儿貌似需要存到数据库中去。目前不考虑使用redis的原因是,项目没到那个体量,而且服务器的内存和空间有限。