2014-10-01 41 views
0

我想創建一個使用谷歌oAuth的登錄頁面。 爲此我創建了一個clientID。 在ClientID我已經完成了爲Android創建,因爲我相信我的應用程序將在Android設備上運行。oAuth使用谷歌API創建混合應用程序

創建客戶端ID - >安裝的應用程序 - > Android的

我已經做了keytooling與SHA1簽署,並創建一個clientId

然後我創建了一個公共API訪問。在此我創建了一個Android密鑰。我提供了com名稱和SHA1細節。由於我使用的是INTEL XDK,因此很容易從那裏獲取COM命名窗格。

在我的JavaScript代碼中,我做了這樣的事情來構造URL。

var clientID =「client_id =」; var responeType = 「& response_type = code」; var scope =「& scope = profile」; var scope =「& scope = https://www.googleapis.com/auth/calendar.readonly」; var redirectURL =「& redirect_uri = urn:ietf:wg:oauth:2.0:oob」; var url =「https://accounts.google.com/o/oauth2/auth?」+ clientID + responeType + scope + redirectURL +「& approval_prompt = auto」;

然後我已經使用一個XHRRequest得到呼叫此URL

變種XHR =新的XMLHttpRequest(); xhr.open( 「GET」,網址,虛假的);
xhr.onload =函數(){ 如果(xhr.readyState == 4 & & xhr.status == 200){
的console.log(this.response); var resp = this.response;

} }  xhr.onerror = function(e) { 
alert("Error : "+e) } xhr.send(); 

我有一個連接到它的事件監聽按鈕。 我是android新手,特別是oAuth。我讓所有類型的錯誤,例如 如

請複製代碼,切換到您的應用,然後粘貼有:

當我按一下按鈕我沒有看到谷歌的任何登錄頁面請求允許 但我可以在console.log()中看到數據。

我在這裏做什麼是錯誤的。

如果有任何方法使用html5創建混合APP請分享。 也請告訴我,如果我正在寫它或wrong.Please指導我。

-S

回答

0

您可以使用此jQuery插件的oauth2:https://github.com/krisrak/jquery-cordova-oauth2

它與Intel XDK

所有你需要做的是與你的OAuth用戶端的參數和回調修改下面的電話將有access_token開始撥打電話

$.oauth2({ 
    auth_url: 'https://accounts.google.com/o/oauth2/auth', 
    response_type: 'code', 
    token_url: 'https://accounts.google.com/o/oauth2/token', 
    logout_url: 'https://accounts.google.com/logout', 
    client_id: 'CLIENT-ID-FROM-GOOGLE', 
    client_secret: 'CLIENT-SECRET-FROM-GOOGLE', 
    redirect_uri: 'http://www.yourwebsite.com/oauth2callback', 
    other_params: {scope:'profile'} 
}, function(token, response){ 
    makeAPICalls(token); 
}, function(error, response){ 
    alert(error); 
}); 
相關問題