我使用此处的说明构建了一个facebook应用程序(Page Tab) stackoverflow.com/questions/21048882/facebook-2014-how-to-create-a-simple-page-with-an-iframe-inside
该应用程序只是显示一些远程页面(顺便说一句内置在.Net 4.0中)。
我想知道(和搜索)是否有任何可能的方法来删除安装其他人在其他页面中构建的应用程序的能力。 Facebook文档很乱,找不到有用的信息。我在这里找到了stackoverflow一个关于同一目标stackoverflow.com/questions/11971727/is-it-possible-to-create-a-private-application-available-only-for-specific-users的老问题。 问题是问题是2岁,我认为当时接受的答案今天不适用。至少我找不到添加限制的位置。
任何可以帮助我的灵魂?
提前, 雨果
答案 0 :(得分:0)
根据给出的建议,我在page_load上继续这样的事情:
if(Request["signed_request"] == null || string.isNullOrEmpty(Request["signed_request"]) || !accessAllowed(Request["signed_request"].ToString()){
//redirect or show error message
}
对于自定义功能:
private static bool accessAllowed(string signed_request) {
try {
return ((dynamic)JsonConvert.DeserializeObject(Encoding.UTF8.GetString(Convert.FromBase64String((signed_request.Split('.')[1]))))).page.id == "myPageId";
}
catch {
return false;
}
}
使用库Json.NET。
我无法找到的是在实际安装应用之前获取“myPageId”的位置。所以我可能最终使用存储在Web服务器中的一些值或Web服务器中的其他文件(我可以将其保存在数据库中,但这种方法可以节省我的数据库之旅)。
感谢所有帮助。