Information Extraction and Information Integration
1
OAuth 2.0 based Web Service
Implementation
Fang Zhang thuzhf@gmail.com
2017.03.15
mailto:thuzhf@gmail.com
2
OAuth 2.0 based Web Service
Implementation
• 主要目标
–实现一个能用Github账户登录,并且
–提供domain expert finding service的网站
3
OAuth 2.0 based Web Service
Implementation
• Github账户登录要求
–请遵照OAuth 2.0协议进行实现
–请在网站首页提供一个按钮,上面有形如“login
with Github”的字样
–用户点击该按钮后即能用Github进行登录并授权
–用户登录之后要求能显示用户在Github上的Email信
息
– Github Oauth文档:
https://developer.github.com/v3/oauth/
– Github API文档:https://developer.github.com/v3/
https://developer.github.com/v3/oauth/
https://developer.github.com/v3/
4
OAuth 2.0 based Web Service
Implementation
• Domain expert finding service要求
–用户在登录后,显示一个搜索框
–用户输入一个domain(比如data mining、social
network等)并提交之后,要求能显示这个domain的
相关experts,并按照H-index排序(我们会提供这些
数据给大家)
–每个expert都可以被点击,并且用户点击一个expert
之后,要求能显示这个expert的coauthors,并按照
合作次数排序(我们也会提供这些数据给大家)
5
OAuth 2.0 based Web Service
Implementation
• Domain expert finding service要求
–数据链接:https://cn.aminer.org/aminernetwork (
该网页上有详细的数据说明)
–请从上面的链接里下载:AMiner-Coauthor.zip和
AMiner-Author.zip
– AMiner-Author.zip里有用户的research interest信
息以及H-index数据,每一个interest都可当做我们这
里的一个domain
– AMiner-Coauthor.zip里有每一个用户的coauthors
以及与他们分别的合作次数
https://cn.aminer.org/aminernetwork
http://arnetminer.org/lab-datasets/aminerdataset/AMiner-Coauthor.zip
http://arnetminer.org/lab-datasets/aminerdataset/AMiner-Author.zip
http://arnetminer.org/lab-datasets/aminerdataset/AMiner-Coauthor.zip
http://arnetminer.org/lab-datasets/aminerdataset/AMiner-Coauthor.zip
6
OAuth 2.0 based Web Service
Implementation
• Domain expert finding service要求
–由于数据相对较大,为了提高结果的返回速度,我们
使用redis数据库来进行这些数据的存储。redis数据
库是将数据直接缓存到内存里的,所以相对于
MySQL等数据库,它的访问速度要快得多。
–大家可以将domain的experts以及experts的
coauthors分别存储到redis里,并在用户查询的时候
实时对redis进行访问并返回即可
– Redis参考链接:
• https://redis.io/topics/quickstart
• https://redis.io/clients
https://redis.io/topics/quickstart
https://redis.io/clients
7
OAuth 2.0 based Web Service
Implementation
• 注意事项
–本作业将在发布后14天内截止。
–每个同学请使用已经分配给大家的以自己学号命名的
订阅,并自行创建一个Linux虚拟机(starting from
$13.39/month。大家可以选择A1 instance,
$18.61/month,有1.75G内存;或者A2 instance,
$58.78/month,有3.5G内存)来完成作业,每个订
阅里面将在作业公布的当天被分配进$30,如果有同
学确实有特别需要,可以向我们申请增加预算。
8
OAuth 2.0 based Web Service
Implementation
• 注意事项
–请大家不要滥用预算,如果有同学因为滥用预算(没
有向我们提前申请增加预算并获得同意)导致自己的
订阅欠费而被自动停用,我们将酌情扣分。
–请大家尽早做作业,有问题请及时联系助教。
9
OAuth 2.0 based Web Service
Implementation
• 最后需要提交的内容
–网站的链接
–两个API接口的链接
• 接口1形如http://xxx.net/expert_finding,参数为domain,
返回结果为这个domain相关的experts,按H-index排序,
json格式。
• 接口2形如http://xxx.net/coauthors,参数为author,返回
结果为这个author的coauthors,按合作次数排序,json格
式。
–说明文档,主要要包含各个功能的实现过程。
10
OAuth 2.0 based Web Service
Implementation
• 谢谢!