我正在使用 LinkedIn Javascript SDK 来登录我的用户,我需要检测用户在完成登录或授权之前是否关闭登录/身份验证窗口。当前的 SDK 在窗口关闭时不会触发登录回调(我自然希望将 IN.User.isAuthorized()
设置为 false
来调用它,就像Facebook Javascript SDK)。
如何检测用户何时关闭“使用 LinkedIn 登录”窗口?
最佳答案
处理 LinkedIn API 有点像一场噩梦。
我遇到了类似的问题,如果他们多次打开身份验证窗口,它就会触发多个请求。我解决了这个问题,方法是在每次打开窗口时添加一个计数,然后忽略 count > 1
的所有内容。我的解决方案涉及 Angular 和 Promises,因此我不会发布完整的解决方案。
对于您来说,我只需添加 authTriggered
和 authComplete
变量。当他们单击链接/按钮以通过 LinkedIn 进行授权时,就会设置触发,并且在身份验证回调中设置完整的变量。
也许是这样的?
var LinkedIn = LinkedIn || {};
LinkedIn = {
authTriggered: false,
authComplete: false,
authorise: function() {
IN.User.authorize(function() {
this.authComplete = true;
});
}
};
var authLink = document.getElementById('auth-link');
authLink.addEventListener('click', function(e) {
e.preventDefault();
LinkedIn.authTriggered = true;
LinkedIn.authorise();
});
关于javascript - 如何检测 LinkedIn Javascript SDK 上的登录窗口关闭事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34990939/