错误:redirect_uri_mismatch pydrive

时间:2018-07-29 23:22:52

标签: python-3.x google-drive-api pydrive

我正在尝试连接到Google驱动器,为此,我正在使用python pydrive库。我已按照文档进行操作,并编写了一段与Google Drive连接的代码段。但我得到一个错误 错误:redirect_uri_mismatch

请求http://localhost:8080/中的重定向URI与为OAuth客户端授权的重定向URI不匹配。要更新授权的重定向URI

这是我执行的pydrive代码(我也安装了pydrive库)

from pydrive.auth import GoogleAuth

gauth = GoogleAuth()
gauth.LocalWebserverAuth()

我正在发布我的console.developer帐户的图像,您可以看到我已经按照pydrive文档指定的地址正确编写了地址。我还在网址中添加了outcallback,但仍然遇到相同的错误。任何帮助将不胜感激。谢谢 Console.developers account

Added outhcallback

这是我的client_secrets.json文件的内容:

{“ web”:{,“ project_id”:“ my-project-1532814702018”,“ auth_uri”:“ https://accounts.google.com/o/oauth2/auth”,“ token_uri”:“ https://accounts.google.com/o/oauth2/token”,“ auth_provider_x509_cert_url”: “ https://www.googleapis.com/oauth2/v1/certs”,“ redirect_uris”:[“ http://localhost:8080/oauth2callback”],“ javascript_origins”:[“ http://localhost”,“ http://localhost:8080”]}}

(我已在此处删除了客户端ID和客户端密码)

4 个答案:

答案 0 :(得分:2)

我现在知道有点晚了,但是它可能会对遇到此问题的人有所帮助。 对我来说,这真的很愚蠢。在“授权重定向URI”字段中,该字段必须为“ http://localhost:8080/”,并在末尾加一个斜杠。在“ JavaScript授权来源”中,它必须为“ http://localhost:8080”,且没有斜杠。

答案 1 :(得分:1)

编辑您的URL并将http://localhost:8080/替换为http://localhost:8080

对我有用

答案 2 :(得分:0)

您快到了。只需添加灰色文本中所示的'/ oauth2callback'。

因此,在“授权重定向URI”下:

http://localhost:8080/oauth2callback

答案 3 :(得分:0)

似乎google api已更改其在授权域上的政策,我听说有重定向到localhost的远程域?还是可以更改主机文件...这没有任何意义,因为google支持在本机应用程序上使用api,为什么它们需要域名?