liboauth2 python oauth2 客户端

我要开发同款
匿名用户2013年07月20日
105阅读

技术信息

授权协议
MIT

作品详情

liboauth2是一个轻量级的oauth2pytho客户端。

liboauth2只是实现oauth2协议,并没有实现任何第三方oauth2认证。

如果需要实现第三登录,可以看pyss

支持四种认证方式

一、AuthorizatioCode授权码方式

二、ImplicitGrat隐式授权

三、ResourceOwerPasswordCredetials

四、ClietCredetials客户端证书授权

安装

easy_istallliboauth2

腾讯微博演示

#-*-codig:utf-8-*-importliboauth2importurllibfromflaskimportFlask,redirect,requestCLIENT_ID='youclietid'CLIENT_SECRET='youclietsecret'cliet=liboauth2.Cliet(CLIENT_ID,CLIENT_SECRET)REDIRECT_URI='https://localhost:5000/callback/'AUTH_URI='https://ope.t.qq.com/cgi-bi/oauth2/authorize'ACCESS_TOKEN_URL='https://ope.t.qq.com/cgi-bi/oauth2/access_toke'app=Flask(__ame__)app.debug=True@app.route('/')defhome():#getauthurlurl=cliet.get_auth_url(AUTH_URI,REDIRECT_URI)returredirect(url)@app.route('/callback/')defcallback():#getaccesstokeparams={'code':request.args['code'],'redirect_uri':REDIRECT_URI}resp=cliet.get_access_toke(ACCESS_TOKEN_URL,liboauth2.GRANT_TYPE_AUTH_CODE,params)#pritrespdefurldecode(values):ret={}forsivalues.split('&'):ifs.fid('=')>-1:k,v=map(urllib.uquote,s.split('='))ret[k]=v#ret.setdefault(k,[]).apped(v)returretdata=urldecode(resp['result'])#setaccesstokeadqueryuserifocliet.set_access_toke(data['access_toke'])params={'oauth_cosumer_key':CLIENT_ID,'opeid':data['opeid'],'clietip':request.remote_addr,'oauth_versio':'2.a',}resp=cliet.fetch('https://ope.t.qq.com/api/user/ifo',params)returstr(resp['result'])if__ame__=='__mai__':app.ru(host='localhost',port=5000)

 

功能介绍

liboauth2 是一个轻量级的oauth2 python客户端。 liboauth2 只是实现oauth2协议,并没有实现任何第三方oauth2认证。 如果需要实现第三登录,可以看pysns...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论