问题描述
是否可以在不需要任何身份验证的情况下通过 api 从公开的驱动器中读取文件?
我有一个专门用 javascript 构建的静态应用程序,没有任何后端,我打算在 google docs 或驱动器上的文件中编写一个 json,然后通过 api 读取 json,但我不能使用任何涉及密码的东西,因为事实上,人们可以只检查代码并获得凭据。这可以通过驱动器/文档 api 或任何其他需要密码来写入文件但不需要通过请求读取的地方来完成吗?
解决方法
您可以使用 Apps 脚本 Web app
这将使您拥有一个非常轻量级且易于管理的后端。
创建一个新脚本,然后粘贴此代码,例如:
function doGet() {
// from https://json.org/example.html
let json = {
glossary: {
title: "example glossary",GlossDiv: {
title: "S",GlossList: {
GlossEntry: {
ID: "SGML",SortAs: "SGML",GlossTerm: "Standard Generalized Markup Language",Acronym: "SGML",Abbrev: "ISO 8879:1986",GlossDef: {
para:
"A meta-markup language,used to create markup languages such as DocBook.",GlossSeeAlso: ["GML","XML"],},GlossSee: "markup"
}
}
}
}
};
return ContentService
.createTextOutput(JSON.stringify(json))
.setMimeType(ContentService.MimeType.JSON);
}
用您想要的 json 内容替换 json
变量。
然后部署网络应用:
确保您选择了网络应用,并且:
之后您将获得以下格式的网址:
https://script.google.com/macros/s/[ID]/exec
所以现在您可以向此端点发出 GET 请求以获取 JSON!例如,如果您在浏览器中访问它,您会得到: