文章摘要moonshot-v1-8k
Standby API Responsing..
Valine – 为qq邮箱添加qq头像
因为已经有了类似先例解决方案,就不重复造轮子了,这里直接转自 喵窝・札记
Valine默认自带有很多匿名头像可配置,不过有些为了方便是使用qq邮箱的,如果能把默认头像替换成qq头像会好很多(特殊的个人仪式感?)
打开 Valine.min.js 查找以下字符串: m.cdn+a(e.get("mail"))+m.params
自定义修改为:
var C=function(e,n,r){
var qqavatar=m.cdn+a(e.get("mail"))+m.params;//默认gravator头像接口
if(e.get("mail").indexOf("@qq.com") >= 0){
var prefix = e.get("mail").replace(/@.*/, "");//前缀
var pattern=/^\d+$/g; //正则表达式,数字
var result= prefix.match(pattern);//match 是匹配的意思
if(result!==null){
qqavatar = "//q1.qlogo.cn/g?b=qq&nk="+ prefix +"&s=100";
}
}
var i=u.create("div",{class:"vcard",id:e.id}),o=m.hide?"":'<img class="vimg" src="'+ (qqavatar)+'">',
有待改进
使用后,所有匿名评论头像都成一个了..(可能是我个人改的原因,正在排查)原来不填任何何邮箱的情况下,匿名评论的头像都是一样的/笑哭..- 输入邮箱与
gavatar
相同时(gavatar注册邮箱是qq邮箱), 会优先获取qq邮箱。需要改进为优先获取Gavatar
邮箱
关于 gravatar 邮箱为qq邮箱时获取优先级问题
之前想太多,尝试了各种解法,未果.. 其实只需要把那段判断qq邮箱的代码放到 s = e.get("ua") || "",l = "";
后即可,以下
var qqavatar = m.cdn + a(e.get("mail")) + m.params;
var i = u.create("div", {
class: "vcard",
id: e.id
}),
var i=u.create("div",{class:"vcard",id:e.id}),o=m.hide?"":'<img class="vimg" src="'+ (qqavatar)+'">',
s = e.get("ua") || "",
l = "";
if (e.get("mail").indexOf("@qq.com") >= 0) {
var prefix = e.get("mail").replace(/@.*/, "");
var pattern = /^\d+$/g;
var result = prefix.match(pattern);
if (result !== null) {
qqavatar = "//q.qlogo.cn/headimg_dl?dst_uin=" + prefix + "&spec=640";
}
};
附:qq部分api
部分接口返回的数据需要解析
QQ头像:http://q2.qlogo.cn/headimg_dl?dst_uin=QQ号&spec=100
高清头像:http://q.qlogo.cn/headimg_dl?dst_uin=QQ号&spec=640
QQ网名:http://users.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?uins=QQ号
http://r.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?uins=QQ号
QQ群头像:http://p.qlogo.cn/gh/群号/群号/100/
QQ空间背景音乐:http://qzone-music.qq.com/fcg-bin/cgi_playlist_xml.fcg?g_tk=1916754934&json=1&uin=QQ号
打开QQ资料:tencent://ContactInfo/?subcmd=ViewInfo&puin=0&uin=QQ号
发起QQ会话:http://wpa.qq.com/msgrd?v=3&uin=QQ号&site=qq&menu=yes
tencent://Message/?uin=QQ号
评论留言
既来之则留之~ 欢迎在下方留言评论,提交评论后还可以撤销或重新编辑。(Valine 会自动保存您的评论信息到浏览器)