簡體   English   中英

Google Cloud Vision API 權限被拒絕

[英]Google Cloud Vision API Permission Denied

我試圖運行示例應用程序,在此處找到Github Sample ,我創建了一個證書並創建了一個 API 密鑰並按照說明進行了應用。 但是當我上傳圖像時,我收到了這個異常。 我不知道我在哪里犯了錯誤。 我錯過了什么嗎?

failed to make API request because {
    "code": 403,
    "errors": [{
        "domain": "global",
        "message": "Requests from this Android client application <empty> are blocked.",
        "reason": "forbidden"
    }],
    "message": "Requests from this Android client application <empty> are blocked.",
    "status": "PERMISSION_DENIED"
}

我有同樣的問題。 但我解決了這個問題。

如果添加瀏覽器API密鑰,則代碼運行良好。

我懷疑您正在創建一個Android API密鑰,僅限於您的應用,並注冊了sha1指紋。

這很棒! 不幸的是, 非Android專用的Google API java客戶端庫還沒有完全支持android api密鑰的API請求,就像特定Android的那樣。 這意味着API請求不包括一些用於驗證API端點的密鑰/應用程序的標頭,這會導致該錯誤(請注意錯誤消息中的client application <empty> - <empty>將是您的軟件包名稱,如果請求按預期形成)。

我仍然在尋找該怎么做 - 如果/當我找到它時會更新。

你在android項目中改變了什么? 確保啟用雲視覺API並啟用結算功能。 我所要做的就是使用Github中的相同示例在MainActivity中添加我的API密鑰。

看看我的截圖

這里有些問題,我修好!!!!!

剛把服務器密鑰!!

在此輸入圖像描述

希望有人幫忙

我相信使用瀏覽器密鑰可以解決您的問題。 但實際的解決方案是使用OAuth密鑰。 就像Android App應該做的那樣。

  1. 要執行此操作,請轉到Cloud Developer Console中側邊菜單中的憑據部分。
  2. 單擊憑據下拉菜單,然后選擇OAuth客戶端ID。
  3. 選擇應用類型為Android。
  4. 為Cloud Vision API添加適合Android客戶端的名稱
  5. 以所需格式輸入SHA1指紋。 在屏幕上使用上面提到的命令。
  6. 輸入應用程序的包名稱,可以位於gradle的defaultConfig塊中。
  7. 點擊創建。

這是一個摘錄形成完整的教程在這里

您可能還將 API 密鑰限制為僅允許來自 Android 應用程序的請求。 將其更改為None ,它將接受所有請求,但是,這也意味着安全性降低。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM