Facebook API registerUsers - Error 100: hash de correo electrónico no válido

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

  •  06-07-2019
  •  | 
  •  

Pregunta

Utilizando PyFacebook, estoy tratando de registrar un usuario de prueba de mi sitio con mi aplicación de Facebook. Puedo conectarme a la API y devolver una lista de amigos, etc. Sin embargo, cuando intento registrar una dirección usando:

hashed_emails = facebook.hash_email('foo@bar.com')
accounts = [hashed_emails]
facebook.connect.registerUsers(accounts)

Obtengo:

  

FacebookError: Error 100: Inválido   hash de correo electrónico especificado al intentar   use connect.registerUsers (cuentas)

Sin embargo, sé que el hash es correcto ya que el hash de prueba en la documentación devuelve el mismo resultado:

mary@example.com = 4228600737_c96da02bba97aedfd26136e980ae3761

También sé que la dirección de correo electrónico utilizada es definitivamente un usuario de Facebook. Además, connect.getUnconnectedFriendsCount () funciona bien y devuelve el resultado esperado (¡0!), Lo que sugiere que el enlace a la aplicación está bien.

¿Qué está pasando? ¿Es connect.registerUsers () algo que solo funcionaría una vez que me hayan dado 'permiso' para usar Friend Linking? ¿O es el mensaje de error que estoy recibiendo un mensaje de captura para varios resultados diferentes? ¿O acabo de entender mal el uso de connect.registerUsers ()?

¿Fue útil?

Solución 2

Mi matriz de solicitud a la API tenía un formato incorrecto. Debería haber sido:

hashed_emails = facebook.hash_email('foo@bar.com')

# Wrong: accounts = [hashed_emails]
accounts = [{"email_hash": hashed_emails}] 

facebook.connect.registerUsers(accounts)

Que devolvió la respuesta esperada (lista de hashes registrados) y se demostró aún más mediante connect.getUnconnectedFriendsCount () que ahora devuelve 1.

Otros consejos

¿El hash se almacena como el tipo correcto?

Además, puede ser bueno almacenar el hash como una variable separada en caso de que aparezca una extraña condición de carrera ...

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top