0

我有一个私人的谷歌网站。我有我做的公告页面post...

我想获取最新的帖子图像并想在其他页面上显示它......

但我遇到的问题是,如果网站是私有的,我无法fetch从它的图像URL以及它的内容中获取该图像。

代码:

var page = SitesApp.getSite(domainName, sitename).getChildByName(announcementPageName)
var announcements = page.getAnnouncements();
var coll=[]
for(var i=0;i< announcements.length;i++){
    var announcementJson={title : announcements[i].getTitle(),
                          content : announcements[i].getTextContent(),
                          image : announcements[i].getAttachments()[0].getUrl()
                         }
coll.push(announcementJson)
}

当我使用 HTML 的coll[i].imagein"img src="""标记时,它没有给出输出。

我该如何解决这个问题?

我的站点位于 Google Apps 域中,并且站点的权限是私有的或域内的个人。我在某处读到 Google 站点对图像 URL 进行了编码,如果站点是私有的,则post标记对编码的 URL 无效。如果是这样,那么还有什么替代方法?

4

1 回答 1

0

您将需要解决域和谷歌的安全设置。这可能违反您的雇佣协议和当地法律,因此请先咨询您的域管理员。

总体概念:

  1. 在域帐户中,使用基于时间的触发器创建应用程序脚本。该脚本将定期捕获您感兴趣的图像,并将其保存在某处。(我们假设某处是用户的 google 驱动器,并且它使用相同的域帐户同步到 PC 上。)

  2. 在域帐户之外,另一个基于时间的脚本将从某处获取该图像,并将其放在某处 public。这很可能是在具有 google docs 同步的同一台 PC 上运行的 python 脚本;该脚本可以检查图像文件的新副本是否存在,并将其复制到公共位置(例如 Dropbox 帐户 - 请参阅Python API)。或者,您的公司可能有一个公共 Web 服务器,您可以将文件复制到该服务器。

  3. 您的外部(非域)站点只需要通过其某个公共URL(例如 Dropbox)来引用图像。

我希望这有助于您入门。

于 2013-01-10T19:59:36.753 回答