从域内部将网站图标添加到 Google 应用脚本

问题描述 投票:0回答:1

我无法让我的图标显示在我的域内的任何 Google Apps 脚本中。

Google 文档说要这样写:

var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setFaviconUrl('http://www.example.com/image.png');

但是没有关于如何使用我的域内公共文件夹中的文件的 URL 的指导。
我的网址如下所示:

https://drive.google.com/file/d/[googleId]/view?usp=drive_link

然后我收到一条错误消息,指出我的文件类型错误。如果我将 &type=.png 附加到我的网址,类型消息就会消失,并且我会看到 Google Apps 脚本图标(蓝色方块上的白色箭头)

当我检查浏览器时,我想我看到了根本问题:

Cross-Origin Read Blocking (CORB) blocked cross-origin response https://drive.google.com/file/d/[Google ID]/view?usp=drive_link&type=.png with MIME type text/html. See https://www.chromestatus.com/feature/5629709824032768 for more details.

我也尝试过指定原始 .svg 代码,但这完全被忽略了。

我正在寻找 2023 年的可靠解决方案。我看到一个答案是将我的应用程序嵌入到空白的谷歌网站中。这可行,但我想让它按照设计的方式工作。

我并不反对一些免费/廉价的网址托管,但我不想在未经许可的情况下使用任何人的IP。 我看到了一些其他问题,但没有适用于该特定问题的解决方案(谷歌域内的自托管图标)

网络应用程序的图标无法通过应用程序脚本加载

当我将应用程序部署到谷歌应用程序引擎时,

favicon.ico 没有出现

google-apps-script web-applications
1个回答
0
投票

好的答案就在这个有没有一种方法可以在 Google Drive 上为 Google Web 应用程序托管一个网站图标?


    function doGet() {
      const IMAGEID = "--Google ID--"
      const html = HtmlService.createHtmlOutputFromFile("Index")
      return html.addMetaTag('viewport', 'width=device-width, initial-scale=1')
        .setFaviconUrl(`https://drive.google.com/uc?id=${IMAGEID}&export=download&format=png`)
    }

© www.soinside.com 2019 - 2024. All rights reserved.