獲取此API的訪問權限並不簡單。 This blog post幫助我開始了正確的方向,但是我已經概述了我自己的過程,它不依賴於使用任何外部腳本來工作。步驟如下:
- 獲取客戶端ID和祕密(一次性)
- 獲取刷新令牌(一次性)
- 使用刷新令牌來獲得訪問令牌(每小時一次) 4使用訪問令牌以訪問API
每個步驟詳細說明如下:
獲取客戶端ID和密鑰
- 轉到了Google Developer's console
- 轉到您的項目頁面
- 選擇「同意畫面」的左邊,並確保該電子郵件地址和產品名稱字段設置
- 選擇「憑證「,然後選擇」創建新客戶端ID「
- 將應用程序類型設置爲」Web應用程序「並將」授權重定向URI「設置爲
https://localhost
。您無需更改授權JavaScript起源。
- 單擊「創建客戶端ID」並記錄結果的客戶端ID和客戶端密鑰。
獲取刷新令牌
在Web瀏覽器,輸入以下URL(替代CLIENT_ID修正值): https://accounts.google.com/o/oauth2/auth?scope=https://www.googleapis.com/auth/androidpublisher&response_type=code&access_type=offline&redirect_uri=https://localhost&client_id=XXXX
接受授權出現
任何請求
然後您將被重定向到這樣的URL:
https://localhost/?code=4/k0TenvwICIgmBoQOazJy4_EnJr6-.clLqtp_vVAIbEnp6UAPFm0GASPqQigI
複製此網址的後半部分
使用wget來把這段代碼轉換成刷新令牌代碼;替代CODE,CLIENT_ID和CLIENT_SECRET
wget --debug --post-data="grant_type=authorization_code&code=CODE&client_id=CLIENT_ID&client_secret=CLIENT_SECRET&redirect_uri=https://localhost" https://accounts.google.com/o/oauth2/token
所得JSON文件將包含一個的access_token和refresh_token。記錄refresh_token值
獲取訪問令牌
- 發送POST請求來https://accounts.google.com/o/oauth2/token與設置以下字段(替代REFRESH_TOKEN,CLIENT_ID,CLIENT_SECRET)
- grant_type = refresh_token
- refresh_token = REFRESH_TOKEN
- client_id = CLI ENT_ID
- client_secret = CLIENT_SECRET
你會得到一個包含該的access_token將是很好的一小時JSON字符串。
使用訪問令牌才能API請求
取從
https://www.googleapis.com/androidpublisher/v1.1/applications/PACKAGENAME/inapp/SKU/purchases/PURCHASETOKEN
包含訪問令牌的Authorization頭,如:
Authorization: Bearer ya29.1.AADtN_WoM4-4Fb1voFL-emcUWluijCzwvc9Z-FYM9SPvK03HCbGkdROJTVVPSLHK2IlVJQ
你也可能能夠通過t他訪問令牌作爲HTTP查詢參數,例如
https://www.googleapis.com/androidpublisher/v1.1/applications/PACKAGENAME/inapp/SKU/purchases/PURCHASETOKEN?authorization_token=AUTHTOKEN
檢查HT有關Google庫的解決方案,請訪問http://stackoverflow.com/a/24264696/165708。 –