Come registriamo gli utenti - utenti di Facebook Connect che accedono per la prima volta - quando non riusciamo a ottenere un indirizzo e-mail da Facebook?

StackOverflow https://stackoverflow.com/questions/1220144

Domanda

Facebook Connect consente comunicazioni molto limitate e l'accesso alle informazioni dell'utente.

Quando un utente accede con Facebook Connect, vorrei creare un account per l'utente sul nostro sito collegato al proprio account Facebook.

L'unico problema è la registrazione (MembershipService.CreateUser (nome utente, password, e-mail)) richiede un indirizzo e-mail , a cui non abbiamo accesso. (Lasciamo loro di scegliere un nome utente prima di collegare gli account).

Come registreresti un utente senza avere il suo indirizzo email?

Preferirei non farli entrare quando collegano gli account e so che può essere fatto. Digg fa un ottimo lavoro esattamente di quello che vorrei fare.

È stato utile?

Soluzione

Puoi registrare l'utente con il tuo sito ma far sapere all'utente che sono stati parzialmente registrati e per completare la registrazione devono inserire i loro dati personali rimanenti (es. indirizzo email)

Consenti comunque all'utente di utilizzare il tuo sito web ma suggerisci sempre loro di non aver ancora completato la registrazione.

È proprio come Stack Overflow, non è necessario registrare il proprio indirizzo e-mail con loro a meno che non si desideri ricevere aggiornamenti e-mail sulle domande postate ecc.

Grazie

Altri suggerimenti

Rimuovi il requisito che l'utente deve fornire un indirizzo email. Dopotutto, non avranno nemmeno una password, quindi dovrai comunque cambiare CreateUser. Se l'utente fa qualcosa che necessiterà di una nuova comunicazione, richiedi una e-mail in quel momento - oppure attendi che Facebook attui " Invio di notifiche da utente a utente " nell'API fbconnect e invia la posta tramite Facebook stesso.

Sono d'accordo con il poster sopra " parziale " soluzione. Forse - dato che Facebook BIGINT "id utente" è unico, è possibile popolare il campo e-mail con 123456789@facebook.com (fb_user_id@facebook.com), indicando che l'e-mail è fornita da Facebook. Non hai accesso diretto all'indirizzo e-mail di un utente FB, quindi davvero, non c'è modo di aggirarlo. Potresti semplicemente aggiungere una stringa nulla o vuota per la password. Onestamente, però, non sembra che la tabella degli utenti sia configurata molto bene per Facebook Connect. Qualche modo per riscrivere? Quindi una voce dell'utente può essere

MembershipService.CreateUser(username, password, email)

o

MembershipService.CreateUser(facebook_user_id)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top