发布到Facebook时如何避免发布重复?

Wal*_*lla 5 facebook facebook-graph-api facebook-rest-api

使用Graph API,我通过POST发布到/ me/feed连接发布故事.我从Facebook获得了成功或错误结果.到现在为止还挺好.偶尔,API需要很长时间,连接超时.在这种情况下,我不确定请求是否成功失败(即可能请求从未到达Facebook,或者它可能成功,结果从未回复给我).你是如何处理这种情况的?

更多细节: 我向Facebook和Twitter发布了很多帖子,因此超时情况经常发生.使用Twitter,解决方案很简单.如果请求第一次超时,我只需再试一次.Twitter检测到重复,所以如果帖子第一次成功发布,那么我将在第二次请求时出现"重复状态"错误,我知道我不需要再重试了.

但Facebook没有检测到重复项,因此如果我重试发布请求,我可能会将该帖子的两个副本发布到用户墙,这不太好.另一方面,如果我不重试,我可能会发布根本没有发布的帖子.思考?

DMC*_*MCS -2

我从 Facebook 收到成功或错误结果。

嗯。当我发布到 Graph API 时,我收到错误或帖子的 ID。我从来没有看到任何成功消息。您在 API 周围使用什么 SDK?

有时,API 需要很长时间并且连接超时。

通常,当事情运行缓慢时,这是由于channelUrl未指定。请参阅https://developers.facebook.com/docs/reference/javascript/

尽可能长时间地缓存通道文件非常重要。提供此文件时,您必须发送具有较长有效期的有效 Expires 标头。这将确保浏览器缓存频道文件,这对于流畅的用户体验非常重要。如果没有适当的缓存,跨域通信将变得非常缓慢,用户体验将严重下降。