微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

当CanvasAuthorizer.Permissions具有多个权限时,页面陷入了循环

如何解决当CanvasAuthorizer.Permissions具有多个权限时,页面陷入了循环

|| 我有一个Web项目(不是mvc),并且我想学习有关Facebook集成的信息(我是facebook dev noob)。在我的页面中,我有一些简单的html和一个asp.net按钮。我为signed_request添加一个隐藏字段(用于按钮回发),这似乎也可以。当我尝试在page_load中添加多个权限时,就会出现问题。如果仅检查user_about_me权限,则该页面似乎正常工作。如果我添加了publish_stream权限,则该页面会不断循环,并且一遍又一遍地加载(每次都重定向)。这是我的page_load代码,当它循环时,要使其不循环,我只删除逗号和第二个权限。奇怪的是,EITHER权限本身起作用:
 protected void Page_Load(object sender,EventArgs e)
{
  var auth = new CanvasAuthorizer();

  auth.Permissions = new[] { \"user_about_me,publish_stream\" };
  if (auth.Authorize())
  {
    var fb = new FacebookWebClient();
    dynamic me = fb.Get(\"me\");

    lblAuth.Text = string.Format(\"User {0} has given permission for this app.\",me.name);

  }
  else
  {
    lblAuth.Text = \"You have not given permission to this application\";
  }
}
我的aspx看起来像这样:
<asp:Label ID=\"lblAuth\" runat=\"server\" Text=\"\"></asp:Label>
<% if(!string.IsNullOrEmpty(Request.Params[\"signed_request\"])) { %>

<input type=\"hidden\" name=\"signed_request\" value=\"<%= Request.Params[\"signed_request\"] %>\" />

<% } %>
<asp:Button ID=\"btnPlaceOrder\" runat=\"server\" Text=\"Place Order\" 
        onclick=\"btnPlaceOrder_Click\" />&nbsp;
        <asp:Label ID=\"lblOrderPlaced\" runat=\"server\" Text=\"\"></asp:Label>
谢谢你的帮助!! 杰夫     

解决方法

        更改
auth.Permissions = new[] { \"user_about_me,publish_stream\" };
 auth.Permissions = new[] { \"user_about_me\",\"publish_stream\" };
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。