将Facebook连接身份验证添加到Django网站。
django-facebook-connect的Python项目详细描述
关于
这个包将facebook连接身份验证添加到django web 地点。许多现有的包都过时了,很快就会被贬低的脸谱网。 api(以及过时的文档),或者只是工作不太正常。
这个包很小,没有外部依赖关系,应该“正常工作”。
安装
您需要创建一个Facebook应用程序,以便Facebook Connect正常工作。
将位于Facebook应用程序设置中的“站点URL”设置为:
http://<your-project’s-address>/facebook_connect
注意:在开发过程中,您可以将上面的设置设置为localhost,例如http://127.0.0.1:8000/facebook_connect
接下来,运行以下命令安装此软件包:
pip install django-facebook-connect
在settings.py中配置以下设置:
FACEBOOK_LOGIN_REDIRECT = “/” # (optional, defaults to “/”)
FACEBOOK_APP_ID = “<place your app id here>” # required
FACEBOOK_APP_SECRET = “<place your app secret code here>” # required
FACEBOOK_SCOPE = “email” # (optional, defaults to “email”)
- 注意:facebook范围决定facebook将向您的用户请求哪些权限,
- 然后依次为您提供访问权限。例如,您的范围可能如下所示: “读取流、发布流、脱机访问、用户照片”,鉴于上述 我们只要求访问电子邮件。这个包裹和 包含python_facebook_sdk,用于检索用户信息-但是 此时收集的信息不超过姓名和电子邮件(可能 在以后的版本中)。
将“Facebook_Connect”添加到已安装应用程序列表:
INSTALLED_APPS = ( ‘facebook_connect’, )
并在URL中包含faceboook_connect.url.py:
urlpatterns = pattern(‘’,
(r’^facebook_connect/’, include(‘facebook_connect.urls’)),)
最后,运行:
python manage.py syncdb
或者,如果您使用南方:
python manage.py schemamigration facebook_connect –initial
创建初始迁移,然后
python manage.py migrate facebook_connect
迁移数据库。
用法
这些标记现在可用于您的模板:
{% load facebook_connect %}
{% facebook_button %}
{% facebook_script %}
如果要覆盖默认按钮(facebook_button tag),选择不同的图像并拥有更多的控制权,则需要触发(单击)启动登录过程的“facebook_connect()”函数。
学分
灵感来自这个“django facebookconnect”包:https://github.com/teebes/django-facebookconnect/ 以及负责Facebook–django用户映射的视图/模型。
验证signedrequest的安全代码由sunil arora提供: http://sunilarora.org/parsing-signedrequest-parameter-in-python-bas