首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Google发布文档和获取发布链接

Google发布文档和获取发布链接
EN

Stack Overflow用户
提问于 2019-12-03 00:49:13
回答 1查看 1.3K关注 0票数 3

如果我在Google中创建了一个文档并键入了一些文本,那么我以后就可以将=>发布到Web文件中,并获得一个指向公共网页- google文档的样式的链接以及一个嵌入链接。

这是手动完成的。如何使用Node.JS服务器脚本(例如,使用服务帐户)使用Goolgle驱动器API自动完成此操作?我在他们的文档里找不到任何关于这个东西的东西,这有可能吗?我需要做一个谷歌脚本来代替吗?有这个可能吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-03 05:13:33

  • 您希望使用带有Node.js的googleapis将Google文档发布到web。
  • 您希望检索已发布的URL。
  • 您希望使用服务帐户来实现这一点。
  • 您已经拥有了服务帐户,并且能够使用Drive。

从你的提问和答复中,我可以这样理解。如果我的理解是正确的,那么这个答案呢?请把这看作是几个可能的答案之一。

用法:

为了使用下面的示例脚本,请执行以下流程。

  1. 准备一份谷歌文档。
    • 在这种情况下,作为一个测试用例,请创建新的谷歌文件到您的谷歌驱动器。

  1. 以作者身份与服务帐户的电子邮件共享创建的Google文档。
  2. 检索Google文档的文件ID。
  3. 将变量设置为以下示例脚本。
  4. 运行脚本。
    • 在本例中,使用了驱动器API的“修订:更新”。

这样,Google文档就会发布到web上,您可以在控制台上看到已发布的URL。

示例脚本:

代码语言:javascript
复制
const { google } = require("googleapis");

// Please set the email and private key of service account.
const auth = new google.auth.JWT(
  "### email of service account ###",
  null,
  "### private key of service account ###" ,
  ["https://www.googleapis.com/auth/drive"]
);
const fileId = "###"; // Please set the file ID.

const drive = google.drive({ version: "v3", auth });
const body = {
  resource: {
    published: true,
    publishedOutsideDomain: true,
    publishAuto: true
  },
  fileId: fileId,
  revisionId: 1
};
drive.revisions.update(body, err => {
  if (err) {
    console.error(err);
    return;
  }
  console.log(`https://docs.google.com/document/d/${fileId}/pub`);
});
  • 请像"-----BEGIN PRIVATE KEY-----\n###\n-----END PRIVATE KEY-----\n"一样设置私钥。

注意:

  • 发布的网址是https://docs.google.com/document/d/${fileId}/pub。在本例中,使用文件ID。因为不幸的是,在当前阶段,像https://docs.google.com/document/d/e/2PACX-###/pubhtml这样的URL无法被Google检索。

参考资料:

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59148718

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档