使用Flask-OpenID,Flask框架有一个非常好的OpenID模块。 但是,facebook只支持FBconnect,没有真正的OpenID。
我正在寻找Flask-OpenID的修改版本(如果存在),它支持FBconnect或以与Flask-OpenID类似的方式执行FBconnect身份验证的库。
答案 0 :(得分:34)
Flask-OAuth扩展程序支持Facebook身份验证:
facebook = oauth.remote_app('facebook',
base_url='https://graph.facebook.com/',
request_token_url=None,
access_token_url='/oauth/access_token',
authorize_url='https://www.facebook.com/dialog/oauth',
consumer_key=FACEBOOK_APP_ID,
consumer_secret=FACEBOOK_APP_SECRET,
request_token_params={'scope': 'email'}
)
这是一个完整的Facebook示例:https://github.com/mitsuhiko/flask-oauth/blob/master/example/facebook.py
答案 1 :(得分:6)
您可能还想检查Flask-Social(这是Flask-Security之上的扩展)。我正在自己设置它,但到目前为止没有问题。 Flask-Security,如果您不熟悉,可以将Flask-Login,Flask-Principal和其他一些扩展程序组合在一起,以实现快速安全层,而Flask-Social则添加了OAuth功能。