¿Cómo registramos usuarios & # 8212; Usuarios de Facebook Connect que inician sesión por primera vez & # 8212; cuando no podemos obtener una dirección de correo electrónico de Facebook?

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

Pregunta

Facebook Connect permite una comunicación muy limitada y acceso a la información del usuario.

Cuando un usuario inicia sesión con Facebook Connect, me gustaría crear una cuenta para el usuario en nuestro sitio que esté vinculada a su cuenta de Facebook.

El único problema es el registro (MembershipService.CreateUser (nombre de usuario, contraseña, correo electrónico)) requiere una dirección de correo electrónico , a la que no tenemos acceso. (Les permitimos elegir un nombre de usuario antes de vincular las cuentas).

¿Cómo registraría a un usuario sin tener su dirección de correo electrónico?

Prefiero no hacer que ingresen cuando vinculan las cuentas, y sé que se puede hacer. Digg hace un muy buen trabajo de exactamente lo que me gustaría hacer.

¿Fue útil?

Solución

Puede registrar al usuario en su sitio pero informarle que ha sido parcialmente y para completar el registro debe ingresar sus datos personales restantes (es decir, dirección de correo electrónico)

Todavía permite que el usuario utilice su sitio web, pero siempre le indica que aún no ha completado su registro.

Es como Stack Overflow, no tiene que registrar su dirección de correo electrónico con ellos a menos que desee recibir actualizaciones por correo electrónico sobre sus preguntas publicadas, etc.

Gracias

Otros consejos

Elimine el requisito de que el usuario proporcione una dirección de correo electrónico. Después de todo, tampoco tendrán una contraseña, por lo que tendrá que cambiar CreateUser de todos modos. Si el usuario hace algo que necesitará comunicarse con ellos, solicite un correo electrónico en ese momento, o espere a que Facebook implemente " Envío de notificaciones de usuario a usuario " en la API de fbconnect y envíe correo a través de Facebook.

Estoy de acuerdo con el "parcial" del póster anterior solución. Tal vez, desde el Facebook BIGINT " ID de usuario " es único, puede completar el campo de correo electrónico con 123456789@facebook.com (fb_user_id@facebook.com), lo que indica que el correo electrónico es suministrado por Facebook. No tiene acceso a la dirección de correo electrónico de un usuario de FB directamente, así que realmente no hay forma de evitarlo. Simplemente puede agregar una cadena nula o vacía para la contraseña. Honestamente, sin embargo, no parece que su tabla de usuarios esté muy bien configurada para Facebook Connect. ¿Alguna forma de reescribir? Entonces una entrada de usuario puede ser

MembershipService.CreateUser(username, password, email)

O

MembershipService.CreateUser(facebook_user_id)
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top