2013-09-26 89 views
1

我想用JavaScript訪問Github API,並且在處理access_token響應時遇到了一些麻煩。 這裏是我的callback.html代碼:JSONP和Github API v3的問題

<script type="text/javascript"> 
var code = window.location.search.substring(6); 
var cb = function(data) { 
    console.log(data); 
} 

var scriptTag = document.createElement("SCRIPT"); 
scriptTag.src = "https://github.com/login/oauth/access_token?client_id=MY_CLIENT_ID&client_secret=MY_CLIENT_SECRET&code="+code+"&format=json&callback=cb"; 
document.getElementsByTagName('HEAD')[0].appendChild(scriptTag); 
</script> 

我在Chrome得到這個錯誤:

Uncaught SyntaxError: Unexpected token : 

我得到這個錯誤的Firefox:

SyntaxError: invalid label 

如果我手動打開鏈接,我可以看到, github的迴應是正確的:

{"access_token":"*********","token_type":"bearer"} 

有什麼想法?

回答

1

您的腳本來源錯誤。它應該是:

scriptTag.src = "https://github.com/login/oauth/access_token?client_id=MY_CLIENT_ID&client_secret=MY_CLIENT_SECRET&code="+code+"&format=json&callback=cb"; 

以前你只有https:github.com,而不是https://github.com

+0

哇,你是對的。我不認爲這是相關的,因爲我仍然得到錯誤。 – user2817499