C# Facebook在C中扩展权限#

C# Facebook在C中扩展权限#,c#,asp.net,facebook,permissions,facebook-oauth,C#,Asp.net,Facebook,Permissions,Facebook Oauth,我正在开发一个Facebook应用程序(使用ASP.NET C#和Nathan Totten的Facebook C#SDK),并尝试访问扩展权限。 我在localhost上试过(在facebook上有一个现有的应用程序),每个人都能工作。但当我试图直接在facebook上使用它时,我会得到一个空白页面(我仍然在facebook上保持连接) 这是我的密码: 第页/aspx: protected void btn_ask_question_Click(object sender, EventArgs

我正在开发一个Facebook应用程序(使用ASP.NET C#和Nathan Totten的Facebook C#SDK),并尝试访问扩展权限。 我在localhost上试过(在facebook上有一个现有的应用程序),每个人都能工作。但当我试图直接在facebook上使用它时,我会得到一个空白页面(我仍然在facebook上保持连接)

这是我的密码:

第页/aspx:

protected void btn_ask_question_Click(object sender, EventArgs e)
    {
        if (ControllerAccess.testUserConnected())
        {
            if (txt_ask_question.InnerText != "")
            {
                Dictionary<string, object> action = new Dictionary<string,object>();
                action.Add("action", "askQuestion");
                action.Add("message", txt_ask_question.InnerText);
                action.Add("idTheme", ddl_choose_question_category.SelectedValue);
                HttpContext.Current.Session["ActionToDo"] = action;
                String s = Controller.GetExtendedPermission2(this, ControllerAccess.getScopeByAction("askQuestion"));
                try{
                    Response.Redirect(s, false);
                } catch(Exception ex)
                {
                }
            }
        }
    }
当我使用这一行时出现空白页:page.Response.Redirect(OAuthDialogAbsoluteURL,false)

但是我记录了我的所有步骤,并且我的OAuthDialogAbsoluteURL是正确的:

当我手动将它输入地址栏时,一切正常

您是否知道本地版本和发布版本之间的区别,或者为什么重定向不起作用?也许facebook会阻止一些请求


谢谢。

如果要使用应用程序测试不同的环境,请确保设置指向托管版本。出于安全原因,Facebook不允许您授权未连接到您的应用程序的网站的用户


通常,您会看到类似“URL不属于应用程序”或类似的错误。

我最终使用Chrome调试器解决了问题。错误是:

Refused to display document because display forbidden by X-Frame-Options
我使用Javascript来修复它,并按如下方式重定向:

Response.Write("<script>");
Response.Write("window.open('"+redirect+"','_top')");
Response.Write("</script>");
Response.Write(“”);
Response.Write(“window.open”(“+redirect+”,“\u top”);
回答。写(“”);

希望它能帮助一些人。

这就是为什么我要显示地址。我认为这是正确的,facebook开发者页面证实这可能是一个好方法。所以我想知道我是否做错了什么:)。我在catch方法中有一条日志消息,但没有记录任何内容,因此它不会进入catch..:/
Refused to display document because display forbidden by X-Frame-Options
Response.Write("<script>");
Response.Write("window.open('"+redirect+"','_top')");
Response.Write("</script>");