预览失败,但部署有效
Previewing failed, but deployment works
背景:
我是 App Maker 的新手,但已经参与 programming/IT 超过 2 年。
我创建了一个 App Maker 应用程序,运行良好。它已在我们的组织内部部署和运行。
它访问 Team Drive 电子表格,根据输入标准对其进行修改,然后向硬编码用户发送电子邮件。它不使用外部 GCP 数据库或其他资源。
它需要的 OAuth 范围是:
- admin.directory.user.readonly
- drive.readonly
- script.send_mail
- 电子表格
- userinfo.email
问题:
我无法再预览该应用程序。
当我单击右上角的 "Preview" 时,会打开一个新选项卡,旋转的轮子似乎表明正在加载预览。在大约 4 秒内,选项卡关闭,原始选项卡(带有脚本,UI 等)在底部中心显示 "Previewing failed. Dismiss" 错误。
我都能毫无问题地部署完全相同的 code/UI/etc 和 运行。
我不知道我更改了什么,因为可以预览应用程序,但似乎无法退回到那个状态。
我试过的:
诚然不多,因为我不知道去哪里找。我很确定某处一定有一些设置,但对于我所有的谷歌搜索,我都一无所获。
这不能是 client/server 脚本或其他语法问题,否则部署也将无法运行。
有了更有意义的错误,我就知道去哪里找了。
预期结果:
显然,如果应用程序可部署,我应该能够预览它。
根据@Morfinismo 的评论,我联系了 G Suite 支持;我的问题已上报给 API 团队。
Google 云支持 ("Support") 要求我使用 FiddlerCap. As I am on a linux machine and FiddlerCap is a windows application, I suggested alternatives (eg:Wireshark) 提供网络流量信息。它最终不是必需的,也从未提供过。
我注意到在 Google scripts 页面上,当访问有问题的项目时选择 "Preview",它缺少以下 OAuth:
https://www.googleapis.com/auth/admin.directory.user.readonly
正常运行的部署版本没有这个缺失。
还是在Preview中,我选择了"Stackdriver (logs)",报错说项目已经被删除了。实际的措辞是:
禁止访问
项目 XXXX 已关闭并计划删除。项目所有者可以在项目列表页面取消关闭。
单击错误 "Go to projects list page" 中的 link 将我带到标题为 "Resources pending deletion" 的页面,该页面没有加载项目列表(但是否则满载)并会永久显示纺车。我尝试了多次,包括一次让它过夜。
支持人员认为我已经删除了 GCP 项目,但老实说我不认为t/didn我没有删除。我还确认创建新预览无效,但创建新部署有效。我还确认(ed)这个特定的 App Maker 应用程序不需要(例如)GCP SQL 数据库。
支持将我指向以下网站:Google undelete project 并要求我执行以下步骤(此处为 copy-pasted):
一个。对于 projectId,输入您的项目 ID。从您提供的屏幕截图来看,这是 "XXX (redacted)"(引号只是为了强调项目 ID,您不应该输入它们。
b。单击执行。
c。系统将提示您授予授权,之前可能会提示您选择您的管理员帐户。请这样做。
d。您应该会收到一个 200 响应,其中 body 为空,即 {}.
e。尝试通过 Project link 访问该项目(此处删除了实际项目 ID)。
- 以上产生了一些奇怪的行为:
一个。取消删除项目给了它一个不同于 App Maker 应用程序的名称;
b。我注意到我还有 3 个其他项目都被正确调用(App Maker 应用程序名称)。
c。当被要求重新授权时,我得到了另一个项目名称("Untitled project"),它与正确的名称不同,也与第 1 段中的不同。 7a,以上。
d。然后我还在一个新的 window 中得到了另一个错误,它是:
- 这是一个错误
请求详细信息
(一堆东西)
这就是我们所知道的。
- 支持人员告知可能存在传播问题,我最多应等待 30 分钟。我做到了,然后它起作用了!唯一奇怪的是工程名写错了,不过只是为了预览,所以没在意。
如果有人需要更多信息,我可以PM我一路截取的截图。
希望这对某人有所帮助!
SJL
背景:
我是 App Maker 的新手,但已经参与 programming/IT 超过 2 年。
我创建了一个 App Maker 应用程序,运行良好。它已在我们的组织内部部署和运行。
它访问 Team Drive 电子表格,根据输入标准对其进行修改,然后向硬编码用户发送电子邮件。它不使用外部 GCP 数据库或其他资源。
它需要的 OAuth 范围是:
- admin.directory.user.readonly
- drive.readonly
- script.send_mail
- 电子表格
- userinfo.email
问题:
我无法再预览该应用程序。
当我单击右上角的 "Preview" 时,会打开一个新选项卡,旋转的轮子似乎表明正在加载预览。在大约 4 秒内,选项卡关闭,原始选项卡(带有脚本,UI 等)在底部中心显示 "Previewing failed. Dismiss" 错误。
我都能毫无问题地部署完全相同的 code/UI/etc 和 运行。
我不知道我更改了什么,因为可以预览应用程序,但似乎无法退回到那个状态。
我试过的:
诚然不多,因为我不知道去哪里找。我很确定某处一定有一些设置,但对于我所有的谷歌搜索,我都一无所获。
这不能是 client/server 脚本或其他语法问题,否则部署也将无法运行。
有了更有意义的错误,我就知道去哪里找了。
预期结果:
显然,如果应用程序可部署,我应该能够预览它。
根据@Morfinismo 的评论,我联系了 G Suite 支持;我的问题已上报给 API 团队。
Google 云支持 ("Support") 要求我使用 FiddlerCap. As I am on a linux machine and FiddlerCap is a windows application, I suggested alternatives (eg:Wireshark) 提供网络流量信息。它最终不是必需的,也从未提供过。
我注意到在 Google scripts 页面上,当访问有问题的项目时选择 "Preview",它缺少以下 OAuth: https://www.googleapis.com/auth/admin.directory.user.readonly 正常运行的部署版本没有这个缺失。
还是在Preview中,我选择了"Stackdriver (logs)",报错说项目已经被删除了。实际的措辞是:
禁止访问
项目 XXXX 已关闭并计划删除。项目所有者可以在项目列表页面取消关闭。
单击错误 "Go to projects list page" 中的 link 将我带到标题为 "Resources pending deletion" 的页面,该页面没有加载项目列表(但是否则满载)并会永久显示纺车。我尝试了多次,包括一次让它过夜。
支持人员认为我已经删除了 GCP 项目,但老实说我不认为t/didn我没有删除。我还确认创建新预览无效,但创建新部署有效。我还确认(ed)这个特定的 App Maker 应用程序不需要(例如)GCP SQL 数据库。
支持将我指向以下网站:Google undelete project 并要求我执行以下步骤(此处为 copy-pasted):
一个。对于 projectId,输入您的项目 ID。从您提供的屏幕截图来看,这是 "XXX (redacted)"(引号只是为了强调项目 ID,您不应该输入它们。
b。单击执行。
c。系统将提示您授予授权,之前可能会提示您选择您的管理员帐户。请这样做。
d。您应该会收到一个 200 响应,其中 body 为空,即 {}.
e。尝试通过 Project link 访问该项目(此处删除了实际项目 ID)。
- 以上产生了一些奇怪的行为:
一个。取消删除项目给了它一个不同于 App Maker 应用程序的名称;
b。我注意到我还有 3 个其他项目都被正确调用(App Maker 应用程序名称)。
c。当被要求重新授权时,我得到了另一个项目名称("Untitled project"),它与正确的名称不同,也与第 1 段中的不同。 7a,以上。
d。然后我还在一个新的 window 中得到了另一个错误,它是:
- 这是一个错误
请求详细信息 (一堆东西) 这就是我们所知道的。
- 支持人员告知可能存在传播问题,我最多应等待 30 分钟。我做到了,然后它起作用了!唯一奇怪的是工程名写错了,不过只是为了预览,所以没在意。
如果有人需要更多信息,我可以PM我一路截取的截图。
希望这对某人有所帮助!
SJL