Wpis z mikrobloga

Mirki od PHP.
Nie wiem w jaki sposób mam rozwiązać następujący problem:
Mam stronę, na które użytkownik loguje się Facebookiem/Instagramem/Naszą klasą etc. Ja otrzymuję dane o użytkowniku z sieci społecznej i teraz muszę je wysłać do zewnętrznego API. Aby to zrobić, najpierw powinienem przejść autoryzację aby otrzymać token. Następnie przesyłam dane do API, używając uzyskanego wcześniej tokena.

Pomyślałem sobie, że to nie jest optymalnie za każdym logowaniem się prosić API o token, może wystarczy go gdzieś zapisać i używać, dopóki nie wygasł (chcę zrobić 1 aplikacja = 1 token, a nie 1 użytkownik = 1 token). Nie mogę jednak tego trzymać w sesji, bo każdy użytkownik ma własną sesję. Więc co mi pozostaje? Cache i baza danych?

Czy może moje podejście jest złe i zawsze mam wysyłać zapytanie o token z API?

Aha, nie mam żadnego frameworka w projekcie i jadę na legacy code + komponenty Symfony.

#php #webdev #webdevhelp
  • 5
@mariecziek:
Mozesz tez po prostu zapisywac to do pliku i stworzyc prosta klase ktora zajmuje sie cachowaniem tego tokena.

Prosty pseudokod:
1. Zapytaj system cache o token.
2. System sprawdza, czy plik z tokenem istnieje.
3. Sprawdza wiek pliku. Jezeli starszy niz x minut (timeout tokena), pobierz token z API i zapisz do pliku.
4. Jezeli plik nie istnieje, pobierz token z API i utworz plik.
5. Jezeli plik istnieje, i