Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Facebook API注册用户-错误100:无效的电子邮件哈希_Python_Facebook - Fatal编程技术网

Python Facebook API注册用户-错误100:无效的电子邮件哈希

Python Facebook API注册用户-错误100:无效的电子邮件哈希,python,facebook,Python,Facebook,使用PyFacebook,我试图用我的facebook应用程序注册我网站的测试用户。我可以很好地连接到API并返回朋友列表等。但是,当尝试使用以下方式注册地址时: hashed_emails = facebook.hash_email('foo@bar.com') accounts = [hashed_emails] facebook.connect.registerUsers(accounts) 我得到: FacebookError:错误100:无效 尝试删除时指定的电子邮件哈希 使用con

使用PyFacebook,我试图用我的facebook应用程序注册我网站的测试用户。我可以很好地连接到API并返回朋友列表等。但是,当尝试使用以下方式注册地址时:

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

FacebookError:错误100:无效 尝试删除时指定的电子邮件哈希 使用connect.registerUsers(帐户)

但我知道散列是正确的,因为文档中的测试散列返回相同的结果:

mary@example.com = 4228600737_c96da02bba97aedfd26136e980ae3761
我还知道使用的电子邮件地址肯定是Facebook用户。此外,connect.getUnconnectedFriendsCount()工作正常,并返回预期结果(0!)——表明指向应用程序的链接正常


发生什么事了?connect.registerUsers()是否只有在获得使用好友链接的“权限”后才能使用?或者,我收到的错误消息是针对多个不同结果的总括信息?或者我只是误解了connect.registerUsers()的用法?

散列存储的类型是否正确


此外,最好将散列存储为单独的变量,以防出现一些奇怪的竞争条件。

我对API的请求数组格式不正确。应该是:

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

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

facebook.connect.registerUsers(accounts)

它返回了预期的响应(已注册哈希列表),并由connect.getUnconnectedFriendsCount()进一步验证,该函数现在返回1

正确的类型是什么?这就是我得到的:>>foo=facebook.hash\u email('foo@bar.com')>>type(foo)散列是一个单独的变量,为了回答这个问题,我简化了它。将更改为反映。另外,>>类型(帐户)