【问题标题】:OpenGraph watch action - less than 50% watchedOpenGraph 观看动作 - 观看人数不到 50%
【发布时间】:2012-12-11 01:21:59
【问题描述】:

我正在使用 Javascript SDK 来联系 API。

使用内置 Watch 操作:

当用户观看的视频少于 50% 时,或者如果用户从您的应用/网站中移除观看活动,您还应该通过调用以下调用移除发布到 Open Graph 的相应操作实例

删除 https://graph.facebook.com/[watch action instance id]

我的问题是用户何时离开页面。

我尝试使用 jquery unload 方法对 API 进行删除调用,但失败了。我也尝试过使用 ajax 进行同步调用,但这平均会保持/冻结浏览器至少 5 秒。

有什么想法吗?

【问题讨论】:

  • 你为什么不只是,而不是在观看率低于 50% 时 removing,而仅在用户观看 publish 操作>首先超过 50%……?
  • 这是可能的。我很乐意遵循 FB 要求 - 10 秒后发布操作,然后在休假时更新。它不仅能满足要求,还能最大限度地提高知名度。

标签: javascript jquery facebook facebook-javascript-sdk facebook-opengraph


【解决方案1】:

我尝试使用 jquery unload 方法对 API 进行删除调用,但失败了。

嗯,这是异步调用的问题。您的卸载处理程序触发,启动请求,然后浏览器导航离开页面。 等等,什么,还有一个请求还在运行?让我们终止它,因为无论如何我都将加载并显示另一个页面......

我也尝试过使用 ajax 进行同步调用,但这平均会使浏览器保持/冻结至少 5 秒。

如果这就是您的通话所需的时间,那么我认为没有切实可行的缩短时间的方法。

您可以尝试设置一个直接终止的脚本,而不给出返回值(或是的,继续你的东西,浏览器响应)——然后完成其余的(使实际的 API 调用)之后,服务器端。

【讨论】:

  • 对服务器端解决方案有什么建议吗?我一直在研究消息队列,但对于一个应该相当简单的问题来说,这似乎是一个相当复杂的解决方案。
  • 正如我所建议的,一种可能的方法是让服务器端脚本关闭连接,然后继续其工作 - 例如在 PHP 中,这应该是可能的,如此处所述,stackoverflow.com/questions/138374/close-a-connection-early跨度>
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
  • 2019-03-10
  • 1970-01-01
  • 2011-04-08
  • 2013-10-19
相关资源
最近更新 更多