由于某种原因需要联系github仓库作者,所以就研究了一下。
第一种方法
找到这个github用户自己创建的仓库,找到他的提交记录(commit)
例如:
第二种方法
使用Github提供的GraphQL来查询用户邮箱
访问Github的GraphQL API Explorer ,点击右侧的Sign in,使用你的github账号登陆,这样就可以调用Github的API了。
登陆后,你下方的GraphQL输入框就可以输入内容了。在其中输入如下代码:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21{
repository(name: "grank", owner: "lctt") {
ref(qualifiedName: "master") {
target {
... on Commit {
id
history(first: 5) {
edges {
node {
author {
name
email
}
}
}
}
}
}
}
}
}
并将 name 替换为你要查询的人的 repo 名,owner 改为你需要查询的人的名字,然后点击执行按钮。
右侧会出现你的执行结果,你会发现,其中出现我们想要的“邮箱”地址。
你会发现这里有两种类型的邮箱,第一种时我们常见的比如:QQ邮箱,网易邮箱,google邮箱;另一种是形如:27856297+dependabot-preview[bot]@users.noreply.github.com 这样的邮箱。
这两种邮箱的区别是,前者是我们自己注册github时填写的邮箱;后者是github默认生成的邮箱,我们通过github网页、api操作产生commit记录时,邮箱信息用的是github默认生成的邮箱。
也可以在设置中设置邮箱不可见,这样别人就没法知道你的邮箱啦
总结
国内的码云也可以通过第一种方法获取邮箱。
如果这个用户没有任何提交记录那就没法知道他的邮箱啦。