Podczas korzystania z frameworku Django REST z iOS, o ile nie korzystasz z przeglądarki, standardowy system uwierzytelniania Django nie wchodzi w grę. Zostało to ujawnione poprzez DRF authentication system as SessionAuthentication
i polega na tym, że aplikacja może przesłać pliki cookie i token CSRF z żądaniem, co zazwyczaj nie jest możliwe.
W większości sytuacji gdzie używasz systemu uwierzytelniania Django już i można ufać swoim aplikacja przechowywania haseł, byś use something like BasicAuthentiction
. Większość ludzi nie może lub nie wierzy w swój ekosystem aplikacji, więc używa systemu uwierzytelniania opartego na tokenie like TokenAuthentication
lub OAuth2Authorization
(w połączeniu with an OAuth provider). Więcej informacji o każdym typie uwierzytelniania można znaleźć na stronie in this answer on Stack Overflow.
Ale w sytuacji, to w zasadzie ogranicza się tylko przy użyciu coś podobnego OAuth 2. Dzieje się tak dlatego, że musisz powiązać użytkownika z tokenem, a większość systemów uwierzytelniania wymaga podania nazwy użytkownika i hasła. W przypadku kont społecznościowych zwykle tak nie jest i zazwyczaj nie mogliby się zalogować. OAuth 2 działa w połączeniu ze standardowym loginem Django, więc nie ogranicza się tylko do nazwy użytkownika i hasła. Napisałem więcej o tym, jak to działa w this detailed Stack Overflow answer.
użyj Django Rest Framework Authentication – Anentropic
Dzięki! Uwierzytelnianie DRF jest dość łatwe, a następnie uwierzytelnianie użytkownika Django. Łatwy do nauczenia :) –