1

我正在尝试提交一个名为“Watch”的内置 Facebook Open Graph 操作,但是我不断收到 Facebook 测试帐户用户的错误,并且无法弄清楚为什么 Facebook 拒绝他们自己的“操作”和他们自己的“测试用户” “?

根据 Facebook,如果不使用测试用户帐户,您将无法提交其内置的 Facebook 操作:

Built-in Action Types require that you provide instructions for using your app's Open Graph integration as your Open Graph Test User in a functioning test environment. Failure to provide a functioning test environment will result in rejection of your Action Type.

我有两个测试帐户并选择了“启用 Ticker”按钮,但是当我使用测试用户帐户发布到用户时间线/代码时,我仍然收到此错误:

statusCode:  500
headers:  { 'access-control-allow-origin': '*',
'cache-control': 'no-store',
'content-type': 'text/javascript; charset=UTF-8',
expires: 'Sat, 01 Jan 2000 00:00:00 GMT',
pragma: 'no-cache',
'www-authenticate': 'OAuth "Facebook Platform" "unknown_error" "An unexpected error has occurred. Please retry your request later."',
'x-fb-rev': '645172',
'x-fb-debug': 'YwWqAJLmmVbUhG20kfBzoFaX8vlQ/BH25Xzh3CnakOk=',
date: 'Thu, 11 Oct 2012 08:31:40 GMT',
connection: 'keep-alive',
'content-length': '123' }

这就是我要发布的内容:

{"host":"graph.facebook.com","port":"443","path":"/me/video.watches?access_token=AAAClql9ZBqlMBAExxkqIGs08NBFJ9FKVfEhQmc5C1ZCBZALgPPsVbMuaOXXsYRaAavX2AsjUWZB2IYTkXm8cyjHAJJqNypbZBKPUlnr5FugZDZD&video=https%3A%2F%2Fpazooza.azurewebsites.net%2FpazoozaVideo%3FogType%3Dfacebook%26id%3D0000000000000000000000000000000000000000000000000000000000000000000000000000000000999999999999999999_0000000000000000000000000000000000000000000000000000000000000000000000000000000000999999999999999991","method":"POST"}

愚蠢的是,它适用于普通(真实用户)帐户,但不适用于 Facebook 自己的测试帐户。任何人都知道他们认为问题可能是什么?我还需要为这些测试帐户启用其他功能以使它们使用操作吗?

干杯

更新:我还检查了权限 = {"data":[{"installed":1,"publish_actions":1,"user_videos":1,"bookmarked":1}]};

所以权限不是问题。我已经删除了测试用户并重新创建了另一个,但仍然没有运气......

4

3 回答 3

1

它可能与: 无法以测试用户身份发布 Open Graph 操作

请注意,沙盒模式现在位于“设置”->“基本”上

于 2012-10-11T19:42:13.347 回答
0

问题有两个方面:

1) Facebook 的提交操作流程有一些限制,即测试操作的测试人员不会就“他们为什么不批准您的操作”给您太多反馈。他们只是为您提供指向文档的链接以及您想从中锻炼的原因,为什么您的操作不适用于他们的测试用户帐户。这个故事的另一部分是测试您的操作的 FB 测试人员创建“新”测试用户帐户,而不管您创建的测试用户帐户和他们使用它们。它们有一个名称,例如“Auth Preview User”。

2) 问题的原因与我向所有尝试注册和使用我的应用的 Facebook 用户提出的请求有关。我正在调用图形 api 以将每个用户的访问令牌有效地延长至 60 天(FB 应用程序允许的最大值)。然而,这些由 FB 测试人员创建的“新”测试用户帐户似乎表现出奇怪的行为,并且寿命只有 2 小时。每当我尝试扩展其中一个帐户时,都会出现错误。但是在第二个请求中(例如,如果我留在我的 Canvas 应用程序中并且只是单击了另一个链接)Facebook 会将同一个用户发回给我,但会使用新的 access_token 和该 access_token 的到期日期?我认为这个新令牌的有效期要长得多,有几百年。所以我只是将它存储在旧的顶部并消除了我的逻辑错误。显然我不知道为什么 FB 会这样做,但是嗯!真是太棒了!

无论哪种情况,我认为我已经了解到,每当您向 FB 提交操作时,您都会在发送指令的开头放置尽可能多的信息以复制您的操作。我说的是这样的:

(我已经用你们创建的所有 3 个预览测试用户帐户测试了这个操作,每个都上传了一个示例视频,你收到什么错误?)

  1. 第一条指令
  2. 第二条指令
  3. ...

高温高压

于 2012-10-24T08:24:40.067 回答
0

Action 类型有审核流程。您需要提交 Action 类型 Like。如果您不提交这个,它仅适用于创建应用程序的帐户或您添加到该应用程序的任何测试人员。检查应用程序设置并提交以供审核。希望它会有所帮助

于 2013-05-02T07:17:05.907 回答