2012-11-02 47 views
0

背景: 所以我是一個新手,整個應用程序引擎的事情:我已經在谷歌應用程序引擎的應用程序,在主頁上接受用戶的輸入,然後將信息發送到一個處理程序,然後使用Big Query API與我已上傳到Big Query的某些表一起運行同步查詢。處理程序然後將查詢的結果作爲json發回。不確定如何解決「termsOfServiceNotAccepted」錯誤

Error in runSyncQuery: 

{ 
"error": { 
    "errors": [ 
{ 
"domain": "global", 
"reason": "termsOfServiceNotAccepted", 
"message": "BigQuery Terms of Service have not been accepted" 
} 
    ], 
"code": 403, 
"message": "BigQuery Terms of Service have not been accepted" 
} 
} 

過這個做一些搜索我的COM後:

問題:試圖使同步查詢 在部署它的工作原理主要是,除了有時,用戶可以經常遇到這樣的錯誤 https://groups.google.com/forum/#!msg/bigquery-announce/l0kwVNpQX5A/ct0MglMmYMwJ

如果您將API調用作爲最終用戶進行身份驗證,那麼當最終用戶未接受更新的術語時,API調用將很快返回錯誤服務。針對BigQuery API構建的應用程序應理想地查找這些錯誤,並將用戶引導至Google API控制檯以接受新條款。

除了我真的不明白如何做到這一點。

另外,我測試過我的應用的所有潛在用戶帳戶都可以訪問啓用了Big Query API的特定項目,並且可以使用該API,爲什麼會彈出?

此外,有時特定帳戶不會遇到此問題。例如,如果我不斷刷新,並重試最終使用該應用程序,它不會有這個問題,並工作。但接下來這個錯誤會再次出現。 我不明白用戶在某個時間點是如何接受服務條款的,而在未來的某個時間點上沒有接受服務條款?

+1

就你最後一句話而言,你確實在你的引用文件中讀過**更新的服務條款**。 IOW,如果服務條款(TOS)發生變化,可能會再次要求接受,因爲用戶需要同意新的TOS。 –

回答

0

是的,任何最終用戶誰授權存取BigQuery API必須在https://developers.google.com/console

這是可能的服務條款可以改變接受這些條款由谷歌開發者控制檯提供的服務類型(ToS),以及一些的項目成員尚未接受更新的BigQuery ToS。如果其中一位用戶在授權訪問BigQuery API時收到此消息,則您將其重定向到https://developers.google.com/console以接受服務條款。

回覆:「特定帳戶不會遇到這個問題」 - 您能確認這是否與特定項目上的特定帳戶一致?

+0

在該項目中有3個使用BQ的帳戶。他們在90%左右的時間內工作。對於其他10%,當我查看appengine日誌時,它會給出「termsOfServiceNotAccepted」錯誤。但是,如果我不斷嘗試再次使用該帳戶,它會結束工作。 (所有3個帳戶點擊「同意」第一次嘗試使用應用程序時出現的服務條款) 我知道TOS可以改變,但我不明白如果我蠻力繼續嘗試使用應用程序,爲什麼它會工作。當所有3個用戶一次嘗試使用該應用程序或該應用程序使用新計算機運行時,問題似乎就會出現。 – RidinAGrvyTrain