Php 他们是如何在这里应用Twitter oAuth的?
我刚刚成功地使用PHP为我的twitter应用程序创建了oAuth身份验证 然后我看到,我很惊讶他们如何打开一个新窗口,关闭该窗口,然后在初始窗口中继续请求?!有人能用Javascript解释一下(我猜他们正在使用这个)他们是怎么做到的吗 我注意到当第二个窗口关闭时,他们发出两个GET请求 我希望能够这样做,因为我的用户可以在我的网站上写内容,我不希望被删除。有没有更好的方法不那么突兀?(窗户突然打开)。如果没有,我将使用他们的方法,因为我想不出任何其他方法Php 他们是如何在这里应用Twitter oAuth的?,php,javascript,twitter,Php,Javascript,Twitter,我刚刚成功地使用PHP为我的twitter应用程序创建了oAuth身份验证 然后我看到,我很惊讶他们如何打开一个新窗口,关闭该窗口,然后在初始窗口中继续请求?!有人能用Javascript解释一下(我猜他们正在使用这个)他们是怎么做到的吗 我注意到当第二个窗口关闭时,他们发出两个GET请求 我希望能够这样做,因为我的用户可以在我的网站上写内容,我不希望被删除。有没有更好的方法不那么突兀?(窗户突然打开)。如果没有,我将使用他们的方法,因为我想不出任何其他方法 感谢大家以下是JavaScript代
感谢大家以下是JavaScript代码中与此相关的部分:
TG.util.oauth = {
win: null,
timer: null,
loginUpdate: function() {
$.getJSON('/-login/check?format=json', TG.util.oauth.loginCallback);
},
loginCallback: function(data) {
if (data && data.loggedin) {
TG.util.login.update(data);
}
},
winCheck: function() {
if (!TG.util.oauth.win || TG.util.oauth.win.closed) {
window.clearInterval(TG.util.oauth.timer);
return TG.util.oauth.loginUpdate();
}
},
loginClick: function() {
TG.util.oauth.win = window.open('/-oauth-twitter/request?gotoafter=1&gotor=oauthtwitter&gotop=action%3Dwindowend',
'OAuthTwitterRequest',
'menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes,width=800,height=400');
if (!TG.util.oauth.win) return true;
TG.util.oauth.timer = window.setInterval(TG.util.oauth.winCheck, 300);
return false;
}
};
TG.util.oauth.win=window.open('/-oauth-twitter/request?gotoafter=1&gotor=oauthtwitter&gotop=action%3Dwindowend','OAuthTwitterRequest','menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes,width=800,height=400');打开处理登录的oAuth窗口
如果(!TG.util.oauth.win)返回true;如果窗口未打开(我猜),则返回true
TG.util.oauth.timer=window.setInterval(TG.util.oauth.winCheck,300);生成一个计时器,检查是否每300毫秒登录一次
TG.util.oauth.win = window.open('/-oauth-twitter/request?gotoafter=1&gotor=oauthtwitter&gotop=action%3Dwindowend','OAuthTwitterRequest','menubar=yes,location=yes,resizable=yes,scrollbars=yes,status=yes,width=800,height=400');
if (!TG.util.oauth.win) return true;
TG.util.oauth.timer = window.setInterval(TG.util.oauth.winCheck, 300);