月光倾城
发布于 2025-07-22 / 16 阅读
0
0

如何使用nodejs生成哈希头像---identicons

前言

自己写的图片上传工具个人中心页要展示一个用户头像,但是自己又不想去写自定义头像上传的代码。所以前期先使用默认头像吧,可是要是每个人都使用一样的头像又觉得很怪异。你是否记得你在注册完 github 的时候会给你分配一个默认头像,有点像二维码。后来去 Google 下这种头像叫做哈希头像,是根据一个 hash 值来随机生成的。下面介绍如何使用 nodejs 生成 hash 头像
哈希头像

安装依赖

npm install identicon.js --save
npm install crypto --save

identicon 就是用来生成 hash 头像的 npm 包,它能根据一个 hash 值,生成随机头像对象的 base64 码。那么怎么生成 hash 值呢?就得用到 crypto,根据每个用户的用户名生成一个 hash 值。

代码

import crypto from 'crypto';
import Identicon from 'identicon.js';

let hash = crypto.createHash('md5');
hash.update('andyliwr'); // 传入用户名
let imgData = new Identicon(hash.digest('hex')).toString();
let imgUrl = 'data:image/png;base64,' + imgData; // 这就是头像的base64码

参考资料

identicon.js
crypto 的使用

打个广告

欢迎各位使用我的图片上传工具,只要拖一拖,图片上传加压缩,链接永不丢失。


评论