twikoojs / twikoo

💬 一个简洁、安全、免费的静态网站评论系统 | A simple, safe, free comment system.
http://twikoo.js.org
MIT License
1.51k stars 293 forks source link

feat: support sha256 avatar hash #706

Closed devhaozi closed 4 months ago

devhaozi commented 4 months ago

Closes #701

  1. 头像采用 sha256 进行邮箱哈希,同时也兼容不支持 sha256 的 Cravatar
  2. 默认使用 WeAvatar 作为头像源(WeAvatar 支持 Cravatar 的所有功能)
  3. 默认头像采用首字母(由 WeAvatar 提供)
  4. 优化了头像相关函数的 if 结构

最终效果如图:

image

imaegoo commented 4 months ago

看起来只改了预览时的头像加载逻辑,没改发送以后的头像加载逻辑,发送以后的头像mail字段是undefined,头像会显示不出来的。

twikoo的评论数据结构有mail和mailMd5两个字段用于存储加密前的邮箱和加密后的邮箱,或许可以复用mailMd5字段来存储sha256(不然再增加一个mailSha256字段,改动太大了,也不利于兼容升级),通过mailMd5的位数来判断其存的是md5还是sha256。

我下周一(5月27日)抽时间再把这个pr完善一下。

Android-KitKat commented 4 months ago

不过这样的话,mailMd5 其实应该叫 mailHash。 但这个功能改动,对用户其实不太明显,要做出 突破性变化(指改字段名) 确实让人有些纠结。