我正在使用Facebook C#SDK与ASP> NET应用程序一起使用,并在使用JavaScript SDk登录客户端后使用FacebookWebContext.Current.IsAuthorized方法进行进一步操作(检索用户信息,朋友列表等) 。它正在开始工作,但在一周前突然停止。 FacebookWebContext.Current.IsAuthorized方法现在总是为假。进一步检查发现它在Safari和Firefox 4中工作,但在IE9和Chrome中失败。
IE9似乎没有像fbs_ApplicationID那样看到facebook cookie。在Facebook网站上的JavaSDk控制台中测试不同的示例表明Facebook FB.Cookie.load方法在IE9和Chrome中没有返回任何值。
所以我的问题是,还有其他方法使用SDk在服务器端“auhtorize”应用程序吗?那个Facebook方面的问题是针对浏览器的吗? FB.login回调函数确实返回会话信息,但是如何在服务器端使用它来激活FacebookWebClient?
答案 0 :(得分:2)
我有同样的问题,但行为很奇怪。它在昨天工作,现在不在Chrome和IE9中工作。 fbWebContext.AccessToken为null,并且没有fbs_xxxxx cookie。它在Firefox和Safari中都很好。
这是我的代码:
var fbWebContext = FacebookWebContext.Current;
var app = new FacebookWebClient(fbWebContext);
dynamic fbUser = app.Get("me");