2010-10-01 37 views
0

我試圖讓我的臉譜圖oauth使用javascript的窗口位置方法設置。window.location +從window.location.href處理字符串url

這裏是我到目前爲止的代碼:

function fbLog() { 
var clientID = '11502353444318540727'; 
var redirecturi = 'http://google.com'; 
var clientSecret = '6987d02323442423231f8b9da767b060e9'; 
var codeURI; 
$('#fbLogin').click(function() { 
    window.location = 'https://graph.facebook.com/oauth/authorize?client_id=' + clientID + '&display=touch&redirect_uri='+ redirecturi + '&type=user_agent'; 
codeURI = window.location.href; 
codeURI.split('='); 
console.log(codeURI); 
codeURI = codeURI.split('='); 
codeURI = codeURI[1]; 
console.log(codeURI); 
codeURI = codeURI.split('#'); 
codeURI = codeURI[0]; 
console.log('mega fun'); 
window.open = 'https://graph.facebook.com/oauth/access_token?client_id=' + clientID + '&redirect_uri=' + redirecturi + '&client_secret=' + clientSecret + '&code=' + codeURI 
}); 

} 

當我設置codeURI到window.location.href,是原來的呼叫封底死了嗎?

我很困惑。當我嘗試獲取codeURI時,是否切換到另一個窗口?

回答

0

您必須假設您一旦設置了window.location,瀏覽器將加載一個新頁面,並且當前頁面上的所有代碼都將停止運行。之後不要試圖做任何事情。

據我所知,你所需要的只是以不同的順序做事。

+0

謝謝,它看起來像我需要在document.load檢查,如果回調的url包含單詞'代碼'..我需要一個正則表達式? – Sachin 2010-10-01 23:09:30