2015-05-20 42 views
0

我想上傳一個csv文件到融合表使用curl。我使用開發者控制檯創建了客戶端ID和密碼。然後我使用谷歌遊樂場鏈接生成訪問令牌。unauthorized_Client,同時刷新谷歌訪問令牌

使用生成的訪問令牌,我可以成功地從csv文件導入融合表中的數據。

現在,問題是訪問令牌在一段時間後過期,我必須使用刷新令牌獲取新的訪問令牌。我也想使用curl來做,但是當刷新訪問令牌時,我得到'unauthorized_client'錯誤。

以下是我使用的命令。 -H 「內容類型:應用/八位字節流」,「https://www.googleapis.com/upload/fusiontables/v1/tables/FUSION_TABLE_ID/import

在融合表

捲曲-s -S --data二進制 」INPUT_CSV_FILE「 -H 」承載ACCESS_TOKEN_FROM_PLAYGROUNDLINK授權「 上傳數據「

刷新令牌

捲曲https://www.googleapis.com/oauth2/v3/token -d 」grant_type = refresh_token & refresh_token = rEFRESH_TOKEN(從操場)& CLIENT_ID = CLIENT_ID & client_secret = cLIENT_SECRET「 -X POST

+0

基於「未經授權的客戶端」消息,我會嘗試在你的cmd行中添加'-A「Mozilla」',在'-d ..'之前祝你好運。 – shellter

+0

謝天謝地,我已經達成了解決問題的方案。我在Google操場上生成了驗證碼,但它並未使用我生成的客戶端ID。然後我用我自己的http請求生成驗證碼,如下所示 https://accounts.google.com/o/oauth2/auth? REDIRECT_URI = REDIRECT_URL& RESPONSE_TYPE =代碼& CLIENT_ID = CLIENT_ID& 範圍= HTTPS%3A%2F%2Fwww.googleapis.com%2Fauth%2Ffusiontables& approval_prompt =力& ACCESS_TYPE =離線 和使用的認證代碼來生成接入令牌,它的工作。希望這可以幫助別人。感謝#shellter的幫助! – Gurpreet

+0

將您的解決方案作爲下面的答案發布。然後你可以在48小時後(或者類似的)接受你自己的回答並獲得聲望點。選擇文本後,使用編輯框左上方的「{}」工具爲其提供正確的「代碼」格式。很高興你找到了解決方案。祝你好運。 – shellter

回答

0

我用我自己的http請求生成了驗證碼,如下所示accounts.google.com/o/oauth2/auth? REDIRECT_URI = REDIRECT_URL & RESPONSE_TYPE =代碼& CLIENT_ID = CLIENT_ID &範圍= HTTPS%3A%2F%2Fwww.googleapis.com%2Fauth%2Ffusiontables & approval_prompt =力& ACCESS_TYPE =離線和使用的認證代碼來生成接入令牌&它的工作。