/ / Facebook integrácia pre mobilnú aplikáciu s backendom REST API - android, ios, django, facebook

Integrácia Facebooku pre mobilnú aplikáciu s backendom REST API - android, ios, django, facebook

Budeme stavať mobilné aplikácie (iOS a Android), ktoré vyžadujú backend API REST a integráciu s Facebookom na autentifikáciu.

Stále mám zmätený, čo je najlepší dizajn architektúry pre tento druh použitia.

Hlavná otázka: Kto je zodpovedný za autentifikáciu / autorizáciu prostredníctvom Facebooku, klienta alebo servera?

Možnosť A: Klient sa overuje FB. Klient odosiela žiadosti pomocou tokenu, ktorý dostal od spoločnosti Facebook. Server používa tento identifikátor na identifikáciu používateľa.

Možnosť B: Server sa overuje FB v mene klienta.

Ďalšie poznámky (môžu byť relevantné alebo nie):

  • Rozvíjam časť REST API pomocou Django.
  • Aplikácia bude potrebovať prístup k užívateľom Facebooku, aby sme ich mohli pozvať na používanie aplikácie.

odpovede:

2 pre odpoveď č. 1

Mali by ste ísť s možnosťou A.

  • Autentizujte sa s klientom. Potom dostanete prístupový token.
  • Odošlite tento token na server.
  • Teraz môžete vytvoriť používateľa, vyzdvihnúť priateľov FB a všetky ostatné, ktoré budete potrebovať.

Ak používate django-rest-framework, mali by ste sa pozrieť na balík django-rest-auth. Zaoberá sa prihlásením / vytvorením používateľa na strane servera pomocou prístupového tokenu.

https://django-rest-auth.readthedocs.org/en/latest/installation.html#social-authentication-optional


0 pre odpoveď č. 2

Môžete sa pozrieť na SDK pre systém Google pre Python, malo by vám povedať, ako ho začleniť do aplikácie a ukazuje, ako sa integrovať s niekoľkými rámcami tu (Flask je podobný tomu django).

Spoločnosť Facebook bude robiť overovanie na svojej strane, nie vy, aj keď možno budete chcieť uložiť token používateľa do databázy.