C# 授权Facebook API时强制用户登录Facebook
我已经看到了很多关于这方面的问题,但是由于Facebook更新了他们的API,大多数问题都已经过时了 我有一个网站,人们可以通过将访问令牌存储在该用户上,将其帐户与Facebook帐户绑定。这很有效 然而问题是,如果人们可以来来去去,我有一个选择,那就是人们可以在一台共享计算机上当场将他们的Facebook连接到他们的帐户。 但通过在这台公共计算机上授权应用程序,他们也将自动登录Facebook,因此任何人都可以访问Facebook,从而进入以前的Facebook。 但问题还在于,下一个将自己的账户绑定到Facebook的人将自动获得之前的人已经授权的accesstoken,因为已经登录的用户已经授权了该应用 当用户按下绑定Facebook按钮时,是否有一种方法可以强制用户授权他们的Facebook?或者,在我们收到accessToken后,有没有办法让用户从Facebook注销? 我对Twitter也有同样的问题,但我会把这个问题留给另一个问题C# 授权Facebook API时强制用户登录Facebook,c#,.net,facebook-graph-api,facebook-c#-sdk,C#,.net,Facebook Graph Api,Facebook C# Sdk,我已经看到了很多关于这方面的问题,但是由于Facebook更新了他们的API,大多数问题都已经过时了 我有一个网站,人们可以通过将访问令牌存储在该用户上,将其帐户与Facebook帐户绑定。这很有效 然而问题是,如果人们可以来来去去,我有一个选择,那就是人们可以在一台共享计算机上当场将他们的Facebook连接到他们的帐户。 但通过在这台公共计算机上授权应用程序,他们也将自动登录Facebook,因此任何人都可以访问Facebook,从而进入以前的Facebook。 但问题还在于,下一个将自己的
提前感谢。我找不到强制用户登录的解决方案(问题是他们是否已经登录并获得授权),但如果用户登录并获得授权,我使用javascript SDK注销用户;如果用户登录但未获得授权或根本未经授权,则他至少会获得登录表单 在连接到Facebook页面上,我运行了这个javascript,它将自动注销注册和授权的用户,这意味着下一个登录到Facebook帐户的人现在将获得一个清晰的登录屏幕
window.fbAsyncInit = function() {
FB.init({
appId: 'AppIdStringHere',
status : true,
xfbml : true
});
FB.getLoginStatus(function (response) {
if (response.status === 'connected')
{
//alert("Authorized");
FB.login(function () {
FB.logout(function (response) {
});
}, { scope: 'publish_actions' });
}
else if (response.status === 'not_authorized')
{
//alert("Logged in but not authorized");
}
else
{
//alert("Not logged in");
}
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
你不需要编写代码。您可以在facebook开发者控制台上找到解决方案
- 去
- 进入你的应用程序
- 进入右侧菜单的Facebook登录/设置
- 设置为“是”选项强制Web OAuth重新验证