【问题标题】:Facebook App - Page Tab - restrict/remove ability to installFacebook 应用程序 - 页面选项卡 - 限制/删除安装能力
【发布时间】:2015-05-24 02:19:13
【问题描述】:

我使用此处找到的说明构建了一个 facebook 应用程序(页面选项卡) stackoverflow.com/questions/21048882/facebook-2014-how-to-create-a-simple-page-with-an-iframe-inside.

应用程序只是显示一些远程页面(顺便说一下,内置于 .Net 4.0)。

我想知道(并搜索)是否有任何可能的方法可以删除安装我在其他页面中由其他人构建的应用程序的能力。 Facebook 文档一团糟,找不到有用的信息。我在这里发现了一个关于同一目标stackoverflow.com/questions/11971727/is-it-possible-to-create-a-private-application-available-only-for-specific-users 的老问题。 问题是这个问题已经存在 2 年了,我认为当时接受的答案在今天并不适用。至少我找不到在哪里添加限制。

任何善良的灵魂可以帮助我吗?

提前谢谢, 雨果

【问题讨论】:

标签: facebook privacy


【解决方案1】:

根据给出的建议,我在 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.config 或 Web 服务器中其他文件中的一些值(我可以将其保存在数据库中,但这种方法将节省我访问数据库的时间)。

感谢所有帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-25
    • 1970-01-01
    • 2012-01-02
    • 1970-01-01
    • 2018-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多