23

Mam implementację logowania na Facebooku (dla strony internetowej, używając interfejsu API javascript), dla którego chcę, aby uprawnienie "e-mail" było wymagane. Kiedy użytkownik loguje się po raz pierwszy, może odmówić tego uprawnienia - co jest dość łatwe do wykrycia przez kolejne spojrzenie na punkt końcowy/ja/permissions. Jeśli stwierdzę, że odmówili, nie kontynuuję logowania. Jak na razie dobrze.Minusem jest zawsze używanie auth_type = "rerequest" w przycisku logowania na Facebooku (dla wymaganych uprawnień)?

Następnie podczas kolejnych logowań, aby upewnić się, że dostać ponownie poproszony dla tej zgody, ja to AUTH_TYPE = „rerequest” w moich przycisków logowania (które mogą być świadczone za pośrednictwem albo xfbml lub link z onclick = FB. Zaloguj Się(...)).

Podczas, gdy wydaje się, że działa, moje pytanie brzmi: jeśli zawsze chcę, aby pozwolenie było wymagane, jest jakaś wada ZAWSZE, w tym auth_type = "rerequest" w moich przyciskach logowania? Nie widzę nic przeciwnego w documentation, a pojawia się, aby nie mieć negatywnego wpływu na nowych użytkowników lub użytkowników, którzy nie odmówili pozwolenia (tj. Zmienia tylko przepływ logowania - przez ponowne zgłoszenie jeśli użytkownik już odrzucił coś, co jest pożądanym zachowaniem).

Dobra praktyka zdaje się dyktować, że powinienem włączyć to tylko wtedy, gdy wiem, że jest coś, co chcę ponownie zgłosić, ale dla tego pytania chciałbym się dowiedzieć, czy są jakieś pułapki, aby zawsze w tym.

Odpowiedz

4

Nie ma prawdziwych minusów afaik, ale zalecanym sposobem NIE jest zmuszanie użytkowników do korzystania z uprawnień, które anulowali. Zamiast tego pokaż im pole wejściowe, jeśli nie autoryzują uprawnień do wiadomości e-mail, gdzie mogą wpisać dowolną wiadomość e-mail, której oczekują. Pamiętaj, że pole e-mail nie zawsze jest wypełnione, nawet jeśli użytkownik zaakceptował to uprawnienie.

0

Czy używasz przycisku logowania na Facebooku? Ponowne zapytanie o odrzucone pozwolenie działa.

Wystarczy dodać auth_type = "ponowne zgłoszenie" w przycisku.

<fb:login-button scope="email,user_birthday,public_profile" auth_type="rerequest" onlogin="checkLoginState();"></fb:login-button> 

Nadzieję, że może ci pomóc.

Powiązane problemy