2
我刚刚从旧的Facebook SDK升级到新的Facebook C#SDK 5.0.25(RTW)。我正在使用一些扩展的权限(如email,read_stream,publish_stream,offline_access)来简单登录我的网站。 (fbWebContext.HasPermission(“email”))...当我这样做时,我得到:Facebook.FacebookOAuthException:(190)无效的OAuth访问令牌签名。“(190)无效的OAuth访问令牌签名”与FacebookWebContext HasPermission
您是否面临这个问题?
下面是我使用的代码:
JS:
FB.login(function (response) {
if (response.session) {
if (response.perms) {
// user is logged in and granted some permissions.
// perms is a comma separated list of granted permissions
} else {
// user is logged in, but did not grant any permissions
}
window.location.reload();
} else {
// user is not logged in
}
}, { perms: 'email,read_stream,publish_stream,offline_access' });
C#:
var fbWebContext = FacebookWebContext.Current;
if (fbWebContext.IsAuthorized())
{
var permissions = new FacebookWebAuthorizer(fbWebContext).Permissions;
if (fbWebContext.HasPermission("email")) ...
有什么不对这种方法?
感谢
感谢您的回答。虽然HasPermission方法抛出异常。我认为问题在于我收到的access_tolken。它最后没有点,而且我所推荐的那个小点也要小。看起来像是我没有完成的交换。 你用什么版本? 你是如何得到acces_tolken的? 再次感谢。 – user751608 2011-05-17 20:47:59
嗨,我刚刚编辑了示例,因此您可以创建一个新页面并将我的代码复制/粘贴到您的Web应用程序中并进行测试。希望你使用.net 4,否则你必须适应“动态我= ...”...我不需要获取访问令牌,C#SDK为我完成这项工作。如果我没有所需的权限,访问令牌将为空。您可以调试并放入手表:FacebookWebContext.Current.AccessToken我使用5.0.25版Facebook.dll:“net40-client”,FacebookWeb.dll:“Facebook.Web.dll” – firepol 2011-05-18 15:26:22
非常奇怪的是,HasPermission方法抛出一个例外。它应该简单地返回true或false。你确定你正在使用一个好的语法? HasPermission只能检查一个权限。 HasPermissions接受更多... – firepol 2011-05-18 15:31:26