a51501909a6fe8fccc80f294608611a80666dba8
ci/woodpecker/tag/build Pipeline was successful
1. 预校验(避免无用查库)
原先任何非空字符串都会直接拿去查库。邀请码固定长度且只用
inviteCodeChars(去掉 0/O/1/L 后的 31 个字符),不合规的输入
可以无需查库就拒绝;用统一文案「邀请码无效」,不泄露额外信息。
2. 存量兼容(关键,差点造成线上事故)
最初把校验写成「必须 8 位」。查生产库发现:
6 位:551 个用户
8 位:1 个用户
即绝大多数用户的邀请码仍是 6 位旧码。若只接受 8 位,
这 551 人的码会被判无效,他们将无法被新用户填写邀请——
影响面很大。已改为同时接受 6 位与 8 位,字符集校验不变。
测试覆盖:8 位正常、6 位存量、5/7 位、空串、含易混淆字符
(0/O/1/I/L)、含小写、含符号、含中文。
Description
No description provided
Languages
Go
58.2%
Vue
35.3%
TypeScript
4.1%
CSS
1.5%
JavaScript
0.6%
Other
0.2%