【发布时间】:2020-11-11 04:44:51
【问题描述】:
我一直按照本指南的说明进行操作: https://developers.google.com/gmail/api/quickstart/python
运行一个读取 Gmail 收件箱的基本程序。
基本上,该程序会打开一个新窗口,要求您使用您的 gmail 帐户登录 - 完成后,它会将信息返回给程序,该程序应在 google cloud shell 终端上打印结果。
每当我使用正确的 google 帐户登录时,页面都会显示“localhost 拒绝连接”。由于这个原因,程序的其余部分无法继续,所以谷歌云外壳卡在等待登录发生。有人对为什么会发生此本地主机错误有任何想法吗?提前致谢。
【问题讨论】:
-
浏览器在您的系统(不是 Cloud Shell)上启动。这意味着网络服务器进程必须在您的系统上运行。您正在尝试在 Cloud Shell 中运行代码。如果你查看源代码
run_local_server()会启动一个网络服务器。服务器在错误的系统上运行。 -
感谢您的回答。澄清一下,我需要在哪里运行服务器才能使用 Cloud Shell 代码?
-
您使用的 OAuth 流程需要 Web 浏览器。 Cloud Shell 没有。有一些方法可以创建公共网络服务器(不使用 localhost)。那么问题就变成了如何在 Cloud Shell 上启动 webserver。除了试验您使用了错误的服务(Cloud Shell)。从桌面运行代码。
标签: python-3.x google-cloud-platform gmail-api