我正在使用該工具包的內部版本5.06,我剛開始,試圖做一些簡單的事情:獲取回傳工作。但是,當用戶點擊回發按鈕時,瀏覽器會很快被重定向到某些東西(我認爲它是uiserver。???),然後再次重定向到facebookredirect.axd,最後再次轉到我的主頁畫布頁面。所以,整個會話都會重置。我希望有一些顯而易見的東西丟失(比如我不應該在回發中調用授權)。這是我的代碼:ASP.NET4畫布應用程序:回發導致意外的重定向
using System; using System.Configuration; using System.Web.UI;使用Facebook的 ; 使用Facebook.Web;
公共部分類_Default:頁 {
/// <summary>
/// Gets the current canvas facebook session.
/// </summary>
public FacebookSession CurrentSession
{
get { return (new CanvasAuthorizer()).Session; }
}
protected void Page_Load(object sender, EventArgs e)
{
var auth = new CanvasAuthorizer { Permissions = new[] { "user_about_me" } };
if (auth.Authorize())
{
ShowFacebookContent();
}
}
private void ShowFacebookContent()
{
var fb = new FacebookClient(this.CurrentSession.AccessToken);
dynamic myInfo = fb.Get("me");
lblName.Text = myInfo.name;
lblName.Text += myInfo.gender;
pnlHello.Visible = true;
}
protected void TempSaveButton_Click(object sender, EventArgs e)
{
var auth = new CanvasAuthorizer { Permissions = new[] { "user_about_me" } };
if (auth.Authorize())
{
var fb = new FacebookClient(this.CurrentSession.AccessToken);
dynamic myInfo = fb.Get("me");
lblDisplayText.Text = "Was authorized! name is" + myInfo.name;
}
else
{
lblDisplayText.Text = "Was not authorized!";
}
}
}
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="_Default" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<asp:Label runat="server" ID="a" />
<asp:Panel ID="pnlHello" runat="server" Visible="false"> </asp:Panel>
<h2>
Hello
<asp:Label ID="lblName" runat="server" />!
</h2>
<div>Hello ! Please press button to do postback.
<asp:Button ID="TempSaveButton" Text="Temp Save" runat="server" onclick="TempSaveButton_Click"></asp:button>
<asp:Panel ID="pnlError" runat="server" Visible="false">
<a href="Default.aspx">
<asp:Label ID="lblDisplayText" runat="server" ForeColor="Red" /><br />
</a>
</asp:Panel>
(在上面,標籤沒有得到根本的回傳後置
。感謝您的任何幫助...
Ben
您第一次運行應用程序時是否獲得了Facebook權限對話框? – JCPhlux 2011-03-19 05:32:50
嗨JCPhlux,是的,它確實提示我第一次根據請求的權限授權應用程序。 – BenjiFB 2011-03-20 22:33:27