2015-02-09 99 views
5

我在使用Big-Query API的Java應用程序執行查詢時遇到以下JSON異常。以下是我得到的例外:Google Big-query api 403-Forbidden Exception

{ 
    "error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "accessDenied", 
    "message": "Access Denied: Job eco-span-847:job_LyHmZIvlY1_0J8JQ3pxThEBf19I: The user does not have permission to run a query in project eco-span-847" 
    } 

], 
"code": 403, 
"message": "Access Denied: Job eco-span-847:job_LyHmZIvlY1_0J8JQ3pxThEBf19I: The user does not have permission to run a query in project eco-span-847" 
} 
} 

爲什麼會發生這種情況,我該如何解決這個問題?

+0

這是一個權限問題,但需要更多信息進行調試。您在瀏覽器中登錄時是否執行相同的查詢? – 2015-02-09 22:29:41

回答

6

要在項目中插入查詢作業,調用用戶必須至少是項目中的Reader。

使用BigQuery API時,您需要爲某個用戶構建具有OAuth憑據的客戶端。對於編程式訪問,這通常是一個服務帳戶身份。當您創建新的服務帳戶時,該帳戶不會自動將成員資格角色添加到您的項目中。

要更新作爲項目成員的用戶和服務帳戶,請轉至https://console.developers.google.com/作爲您的項目,在導航面板中選擇「權限」,並確保您使用的用戶或服務帳戶身份是「讀者「的項目。