我正在使用Facebook API w / oAuth使用他们的Javascript SDK登录,并设置oAuth = true。我可以从SDK中成功登录,并让我的xfbml正确呈现。
我使用Facebook C#sdk检索用户ID并发布到FB。我写了一个小测试页来做到这一点。
HTML是:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="fbtest.aspx.cs" Inherits="fbtest" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
ID:<asp:label runat="server" text="Label" ID="Userid"></asp:label><div />
<asp:label runat="server" text="Label" ID="FacebookTokenLabel"></asp:label>
</div>
</form>
</body>
</html>
背后的守则是:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Facebook;
using Facebook.Web;
public partial class fbtest : System.Web.UI.Page
{
private FacebookWebClient _facebookApp;
protected void Page_Load(object sender, EventArgs e)
{
try
{
// FacebookWebContext fbWebContext = FacebookWebContext.Current;
// FacebookTokenLabel.Text += fbWebContext.AccessToken;
FacebookWebClient fb = new FacebookWebClient();
dynamic me = fb.Get("me");
FacebookTokenLabel.Text = me.name;
Userid.Text = me.id;
}
catch (Exception ex)
{
FacebookTokenLabel.Text = ex.Message + ":" + ex.StackTrace;
}
}
}
我试过所有浏览器(IE9,chrome 14.0.835.186 m和FF 6.0.2),我得到了同样的例外:
ID:Label
The type initializer for 'Facebook.FacebookApplication' threw an exception.:
at Facebook.FacebookApplication.get_Current() in e:\Prabir\Documents\Projects\facebooksdk\v5.2.1\Source\Facebook\FacebookApplication.cs:line 48
at Facebook.Web.FacebookWebContext..ctor() in e:\Prabir\Documents\Projects\facebooksdk\v5.2.1\Source\Facebook.Web\FacebookWebContext.cs:line 48
at Facebook.Web.FacebookWebContext.get_Current() in e:\Prabir\Documents\Projects\facebooksdk\v5.2.1\Source\Facebook.Web\FacebookWebContext.cs:line 96
at fbtest.Page_Load(Object sender, EventArgs e) in c:\inetpub\vhosts\beirutna.com\subdomains\beta\httpdocs\fbtest.aspx.cs:line 16
你可以尝试自己: http://beta.beirutna.com并在右上角登录,它会显示您的用户名和图块。然后转到:http://http://beta.beirutna.com/fbtest.aspx
答案 0 :(得分:0)
检查您的内部异常
在我的案例中,它透露: 尝试访问配置部分'facebookSettings'时,ConfigurationPermission请求失败。要允许所有调用者访问此部分的数据,请在声明此部分的配置文件中将section属性“requirePermission”设置为“false”。