简体   繁体   English

Facebook是否为测试用户帐户更改了系统?

[英]Did Facebook change their system for test user accounts?

This could be me making extrapolations from the documentation (which given how it's organized, isn't too difficult to do) but did Facebook make some big changes to how application developers create and utilize test users? 这可能是我从文档中做出推断(给出了它的组织方式,并不难做到),但Facebook是否对应用程序开发人员如何创建和利用测试用户做了一些重大改变?

To my recollection (and I last did this about a month ago), developers used to be able to go to a url from within a logged in account that would convert that user to a 'test user', who had no privileges in the public system but could serve as a test entity for publishing, getting permissions, etc. I had a test user setup via this method and had generated access tokens for him/her that were saved to the database. 对于我的回忆(我上次在一个月前做过这个),开发人员过去能够从登录帐户中转到一个URL,将该用户转换为“测试用户”,该用户在公众中没有任何权限系统,但可以作为发布,获取权限等的测试实体。我通过这种方法设置了测试用户,并为他/她生成了保存到数据库的访问令牌。

Recently this all stopped working. 最近这一切都停止了。 My first instict was to print out the properties of the Facebook object I had created, and where once there had been the JSON decoded user data, there now was an exception from the CURL process that accessed the /me/ api endpoint. 我的第一个问题是打印出我创建的Facebook对象的属性,一旦有了JSON解码的用户数据,现在有一个来自访问/ me / api端点的CURL进程的例外。

Facebook GraphAPI – Uncaught EntCannotSeeExistenceException: The entity (class EntTestUser) backed by id 12345 cannot be seen by the current viewer 12345 (EntID: 12345) Facebook GraphAPI - 未捕获的EntCannotSeeExistenceException:当前查看器12345无法看到由id 12345支持的实体(类EntTestUser)(EntID:12345)

Values obviously changed to protect the innocent. 价值观明显改变,以保护无辜者。 The userids were identical however, which made it strange that the user possessing ID 12345 for some reason had no rights to see 12345 然而,用户ID是相同的,这使得由于某种原因拥有ID 12345的用户无权查看12345而感到奇怪

I looked through the Facebook documentation and found their what seems to be their new logic for making the application itself create temporary test users and generate login URLs for them, something alot of people here are probably familiar with. 我查看了Facebook文档,发现他们的新逻辑似乎是让应用程序本身创建临时测试用户并为他们生成登录URL,这里有很多人可能熟悉的东西。

http://developers.facebook.com/blog/post/429 http://developers.facebook.com/blog/post/429

Has this system superceded the old one? 这个系统取代旧系统吗? It seems that acting on behalf of test user accounts generated via the old method is no longer permitted since they are not made "by" the application. 似乎不再允许代表通过旧方法生成的测试用户帐户行事,因为它们不是由“应用程序”制作的。 I wrote some quick logic to test this new process with fixed access tokens and it worked - I should also mention that all the application logic functions as it originally did with no errors for real user accounts. 我写了一些快速逻辑来测试这个具有固定访问令牌的新流程并且它有效 - 我还应该提到所有应用程序逻辑功能,因为它最初没有真正用户帐户的错误。 Has anyone else experienced this with their Facebook api apps? 有没有其他人用他们的Facebook api应用程序体验过这个? Can we definitely say that these old access tokens/userids/accounts made via that old method are now effectively useless? 我们可以肯定地说,通过这种旧方法制作的这些旧的访问令牌/用户ID /帐户现在实际上是无用的吗?

Thanks as ever. 谢谢你。

http://developers.facebook.com/blog/post/475 http://developers.facebook.com/blog/post/475

I hate to break form and answer my own question, but from the comments enough people seem to be having this problem. 我讨厌打破形式并回答我自己的问题,但是根据评论,人们似乎已经遇到了这个问题。

Digging through the developer updates today I finally found the above post (having already written workarounds, of course) Quoted: 今天挖掘开发人员更新,我终于找到了上面的帖子(当然已经写了解决方法)引用:

We have removed the ability to turn user accounts in test accounts as mentioned here to prevent unintentional conversions of real accounts into test accounts. 我们已删除了在此处提及的在测试帐户中转换用户帐户的功能,以防止将真实帐户无意转换为测试帐户。 The proper way to create test accounts is by using the accounts connection of App Graph Object. 创建测试帐户的正确方法是使用App Graph Object的帐户连接。

This tiny notification was mixed in with the updates for March. 这个微小的通知与3月份的更新混在一起。 Probably should RSS their developer blog so these things don't take me by suprise again! 可能应该RSS他们的开发者博客,所以这些东西不会再让我感到惊讶! This particular update became effective March 4th. 这个特别的更新于3月4日生效。 In any event, it's good to have a conclusive answer right from the source. 无论如何,从源头上得到一个确凿的答案是件好事。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM