抱歉我的英文。
我想在facebook heroku上托管我的应用程序。
我关注了this tutorial,并设法创建了一个应用程序。
但是如何添加重定向到登录和应用程序权限?即当用户访问网址still-bayou-6120.herokuapp.com
或apps.facebook.com/still-bayou-6120
时
他被重定向到登录界面,然后他“接受”或“拒绝”用户的权限?
在上面的教程中,他们没有解释如何
在用户拒绝权限时重定向
我在谷歌搜索但没找到任何文章。
答案 0 :(得分:0)
在" index.erb"中,有一个Facebook init()函数。
window.fbAsyncInit = function() {
FB.init({
appId : "<%= @app['id'] %>", // App ID
channelUrl : "<%= url_no_scheme('/channel.html') %>", // Channel File
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
// Listen to the auth.login which will be called when the user logs in
// using the Login button
FB.Event.subscribe('auth.login', function(response) {
// We want to reload the page now so Ruby can read the cookie that the
// Javascript SDK sat. But we don't want to use
// window.location.reload() because if this is in a canvas there was a
// post made to this page and a reload will trigger a message to the
// user asking if they want to send data again.
window.location = window.location;
});
FB.Canvas.setAutoGrow();
};
因此,您可以添加一些代码来检查用户是否拒绝以下权限。
window.fbAsyncInit = function() {
FB.init({
appId : "<%= @app['id'] %>", // App ID
channelUrl : "<%= url_no_scheme('/channel.html') %>", // Channel File
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
//Check Status
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
FB.Event.subscribe('auth.login', function(response) {
window.location = window.location;
});
FB.Canvas.setAutoGrow();
} else {
//Deny permission//
//DO SOMETHING HERE
}
});
};
PS。我还没有运行此代码。另外,请查看此link以获取Facebook登录信息。