簡體   English   中英

用於登錄的 django rest auth facebook 代碼

[英]django rest auth facebook code for login

在項目中,我使用 django-rest-auth 進行用戶注冊和身份驗證。 我還添加了用於 facebook 登錄的代碼:

from allauth.socialaccount.providers.facebook.views import FacebookOAuth2Adapter
from rest_auth.registration.views import SocialLoginView

class FacebookOAuth2AdapterFixed(FacebookOAuth2Adapter):

    def __init__(self):
        pass


class FacebookLogin(SocialLoginView):
    adapter_class = FacebookOAuth2Adapter

在我的項目 urls.py 中我添加

url(r'^rest-auth/facebook/$', FacebookLogin.as_view(), name='fb_login'),

但是在 url localhost:8000/rest-auth/facebook 我看到帶有 2 個參數的表單:訪問令牌(已經擁有)和代碼。 在此處輸入圖片說明 接下來我的問題是:我可以在沒有此代碼的情況下通過 facebook 登錄,如果沒有,我如何在沒有前端的情況下獲取此代碼? 如何檢查工作用戶身份驗證/注冊? PS:已創建 SocialApp,已創建 Facebook 應用程序,已將應用程序 ID 和應用程序機密添加到社交應用程序中。

只需要“訪問令牌”或“代碼”字段之一。 (我沒有測試代碼字段,但訪問令牌字段有效,代碼字段留空)

要使用訪問令牌,在用戶使用 Facebook javascript SDK 在客戶端執行“登錄 Facebook”步驟后,您將收到來自 Facebook 的響應,其中包含用於訪問 Facebook 數據的“accessToken”。 只需將此訪問令牌粘貼到“訪問令牌”字段中,它就會自動登錄和/或根據從 Facebook 檢索到的數據創建用戶帳戶。

顯然,您可以通過將訪問令牌發布到所有在 javascript 中的表單來執行相同的過程。

在訪問令牌字段中,傳遞您將從 Facebook 開發人員儀表板(生成和調試)獲取的用戶訪問令牌,代碼字段您可以保留為空。 它將在您的應用程序中創建用戶,並將返回帶有用戶詳細信息的 JWT 令牌。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM