未经任何授权读取 google 驱动器上的文件
Reading files on google drive without any auth
是否可以通过 api 从 public 打开的驱动器中读取文件而不需要任何身份验证?
我有一个完全在 javascript 中构建的静态应用程序,没有任何后端,我打算在 google 文档或驱动器上的文件中写入 json,然后阅读 json 通过 api,但我不能使用任何涉及密码的东西,因为人们可以检查代码并获取凭据。这可以用 drive/docs 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 内容。
然后部署网络应用:
确保您 select 网络应用,并且:
之后你会得到一个 URL 这种格式:
https://script.google.com/macros/s/[ID]/exec
现在您可以向此端点发出 GET 请求以获取 JSON!例如在浏览器中访问,得到:
参考资料
是否可以通过 api 从 public 打开的驱动器中读取文件而不需要任何身份验证?
我有一个完全在 javascript 中构建的静态应用程序,没有任何后端,我打算在 google 文档或驱动器上的文件中写入 json,然后阅读 json 通过 api,但我不能使用任何涉及密码的东西,因为人们可以检查代码并获取凭据。这可以用 drive/docs 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 内容。
然后部署网络应用:
确保您 select 网络应用,并且:
之后你会得到一个 URL 这种格式:
https://script.google.com/macros/s/[ID]/exec
现在您可以向此端点发出 GET 请求以获取 JSON!例如在浏览器中访问,得到: