2015-02-11 82 views
1

如何設置一個谷歌項目API密鑰。我想使用谷歌目錄APIS。並且必須檢索域中的用戶列表。在谷歌Api瀏覽器(https://developers.google.com/apis-explorer/#p/admin/directory_v1/directory.users.list)我授權並獲得我的域中的所有用戶的列表。但是當我使用node.js檢索用戶的列表作爲迴應我得到如何創建一個谷歌項目的公共API密鑰

{ 
"error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "badRequest", 
    "message": "Bad Request" 
    } 
    ], 
    "code": 400, 
    "message": "Bad Request" 
} 
} 

這裏是node.js的一小段代碼

var request = require('request'); 

    var request1 = {url : 'https://www.googleapis.com/admin/directory/v1/users', 
    headers :{'Authorization' : 'Bearer '+bodyy.access_token},query:{ 
     domain : 'iritesh.com',key:'AIzaSyBrTEYAap74npiUhKWGp0eLcPY1kBMnTIk' 
    },method : 'GET'}; 
    request(request1,function(err,ress,body){ 
     console.log('body is'); 
     console.log(body); 
    res.render('index',{title: 'Express'}); 

    }); 

我懷疑,因爲我還沒有設置公共密鑰properly.my系統IP地址,我收到此錯誤103.245.XX.XX和我在工程控制檯中設置了相同的IP地址。任何人請指南我應該填寫什麼時候允許服務器IP地址當我使用localhost.am我犯了什麼錯誤? ?我在管理控制檯中啓用了API訪問權限也是.my系統管理員是[email protected],域名是iritesh.com.temporaually我硬編碼它,請忽略this.i附加與此相關的快照。

enter image description here

回答

1

對於初學者用戶:列表需要授權,這意味着你將需要使用開放式身份驗證和公共API密鑰。

的文檔users: list

Users: list  
Requires authorization 

答:您的代碼不工作,因爲你要使用與要求身份驗證的API公共API密鑰。

+0

我使用authorization.first我使用OAuth 2.0用戶流量並獲得管理員的訪問令牌account.and我在報頭包含token.so我的請求訪問authorized.Please如果我把它錯了迴應授權發出? ? – 2015-02-11 07:41:16

+0

您是否使用Web應用程序的客戶端ID?您發佈的圖片顯示的是公共訪問旁邊的「瀏覽器應用程序密鑰」,它不是oauth2,僅用於公開訪問apis,例如Google書籍Google url Shortner,您無需進行身份驗證。你在使用哪一個? – DaImTo 2015-02-11 07:49:44

+0

是的,我使用客戶端ID和OAuth2流程,當您看到https://developers.google.com/admin-sdk/directory/v1/reference/users/list#auth網址並以管理員身份撥打電話時,它還包括一個關鍵參數在url.in這個關鍵參數我使用公共API密鑰。或許在目錄Api都是必需的。我必須發送access_token在標題和公鑰中的關鍵參數。但是,當我刪除請求中的關鍵參數仍然我得到同樣的錯誤.PLease迴應如何消除這個錯誤。 – 2015-02-11 08:00:34

0

看起來你在你的代碼有語法錯誤:

bodyy.access_token 

也許應該是什麼?

body.access_token 
+0

不,這是一個粗略的代碼,它不是錯誤的。將很快清理此代碼 – 2015-02-11 07:40:17