2016-08-15 24 views
6

我已經生成的API管理服務器密鑰,並試圖執行我的Mac上執行以下操作:谷歌表API返回「對方沒有權限」使用服務器密鑰時

curl 'https://sheets.googleapis.com/v4/spreadsheets/MySheetID?ranges=A1:B5&key=TheServerKeyIGeneratedInAPIManager' 

但是,這是它回報如下:

{ 
"error": { 
    "code": 403, 
    "message": "The caller does not have permission", 
    "status": "PERMISSION_DENIED" 
    } 
} 

我在做什麼錯在這裏?

+3

關鍵是用於訪問公共數據,你在做什麼需要認證訪問。 – DaImTo

+0

這很有道理。謝謝! – Instabrite

回答

9

我知道答案有點遲,但對於其他人在同一個問題上掙扎。
只需在驅動器上更改工作表的權限爲公開,以便無需通過API調用進行身份驗證即可訪問該工作表。

要更改訪問:

  1. 開片,谷歌驅動
  2. 在右上角,單擊共享
  3. 在提示窗口的底部,單擊高級
  4. 更改權限,以公共或人鏈接(無需登錄)

發送API請求以從工作表中取數據而無需驗證。

說明:如果工作表中包含敏感數據,那麼公開它並不安全,而是通過身份驗證訪問進行。

+6

此外,您可以分享此表與特定的電子郵件例如。您的服務帳戶(項目)電子郵件。 「client_email」:「[email protected]」, 這將允許您通過腳本訪問工作表。 –

+0

感謝兄弟。在文檔中沒有任何書面的東西可以像你提到的那樣。 –

相關問題