繁体   English   中英

将文件更新到 Google 驱动器时出现无效凭据错误 API

[英]Invalid Credentials Error when updating file to Google drive API

我一直在尝试仅使用 API 和 Python HTTPS 模块替换文件。 有人可以帮助我如何只用 HTTPS 模块替换文件吗?

import sys
import json
import requests
import sys

Acesstoken = ""

params = {
        "grant_type": "refresh_token",
        "client_id": "xxx",
        "client_secret": "xxxx",
        "refresh_token": "xxxx"
        }

authorization_url = "https://www.googleapis.com/oauth2/v4/token"


r = requests.post(authorization_url, data=params)

if r.ok:
    token = str((r.json()['access_token']))
    Refreshtoken = Acesstoken + token
else:
    print('Failed')
    sys.exit()



headers = {
    "Authorization": "Bearer " + str(Acesstoken),
    }


metadataF= {
    'name': "Test",
    'parents':["1vXn346cBsarvkPthqtI1OLzsMzeQQlBX"]
}

files = {
    'data':('metadata', json.dumps(metadataF), 'application/json; charset=UTF-8'), 
    'file': open("./credentials.json", "rb"),
    }



r2= requests.post(
    "https://www.googleapis.com/upload/drive/v3/files/XXXXXXXX?uploadType=multipart",
    headers= headers,
    files= files
)

print(r2)

我只想使用 Python 的 Https 模块。 我不想使用谷歌客户端库。 如果可能的话,请帮助我。

错误

<Response [401]> 与此`{“错误”:{“错误”:[{“域”:“全球”,“原因”:“authError”,“消息”:“无效凭证”,“locationType”: "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" }

在此处输入图像描述

<Response [401]> 与此`{“错误”:{“错误”:[{“域”:“全球”,“原因”:“authError”,“消息”:“无效凭证”,“locationType”: "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" }

无效凭证意味着您的令牌已过期。 访问令牌仅在一个小时内有效。 如果您的应用仍在测试中,刷新令牌的有效期仅为 7 天。

如此所述,错误 401 error: Invalid credentials 与以下内容有关:

...您使用的访问令牌已过期或无效。 此错误也可能是由于缺少对所请求范围的授权...

如果令牌适用于其他类型的请求,您可能需要检查范围。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM