我们已经建立了一个带有Page Tab application的Facebook Like Gate。我们之前已经做过无数次这种应用并没有什么不寻常的。
在我们的ASP.Net 4.0 Web Forms应用程序中,我们使用Facebook C# SDK,最新版本(6.4.2)直接从NuGet和以下C#代码中提取:
public static bool IsPageLiked(string appId,
string appSecret, string signedRequest)
{
var fb = new FacebookClient { AppId = appId };
dynamic req = fb.ParseSignedRequest(appSecret, signedRequest);
return req.page.liked;
}
之前我们已经多次使用过此代码,我们从来没有遇到任何问题。该应用及其Like Gate在Unpublished Page上运行良好 - 因此只有Page Admins的App Roles人才能看到该应用。
但是,我们看到了间歇性的错误。这只会影响某些用户,但这些用户只要喜欢或不同于托管标签应用的页面,就会可靠地看到该消息:此内容不再可用
您要求的内容目前无法显示。它可能暂时不可用,您点击的链接可能已过期,或者您可能无权查看此页面。
如果您尝试访问您没有权限的内容,则会显示该错误消息。但是,用户仍然是Page Admins,因此他们查看App和Page的权限不会改变。
Google表明在Facebook结束时这是一个错误,没有人真正找到一个令人满意的解决方案。奇怪的是,我们的客户对这个答案印象不尽。
有没有人能提供更具建设性的东西?请? :)
答案 0 :(得分:-1)
现在,根据Facebook的政策,根据某人是否喜欢您的网页,在应用内拦截应用或内容。
请参阅此处的公告:https://developers.facebook.com/blog/post/2014/08/07/Graph-API-v2.1/
关于此错误 - 您是否为应用ID设置了特定的地理或年龄限制?如果是这样,有些人将无法看到您的应用,并会显示错误。这是某些品牌(例如酒类品牌)为保护未成年人免受其应用访问而做的事情。