我是谷歌网站的新用户,我创建了一个测试谷歌网站,并将谷歌驱动器中的一些页面文件添加到页面中。
我的问题是,通过任何Google Apps脚本从谷歌驱动器添加文件/文件夹时,是否可以从谷歌网站设置权限?或Google Drive SDK?
我还概述了有关添加UI元素/ html元素的Google Apps脚本。 我还使用Google Drive SDK执行一些基本身份验证。
1-拥有所有这些信息,任何人都可以告诉我如何执行权限操作。 2-我想要问的另一件事是,如果我们在文件柜模板中上传文件,我们可以设置任何类型的权限或删除该文件的下载链接按钮。 ?
答案 0 :(得分:1)
Apps脚本有一项名为云端硬盘的服务。云端硬盘有一个名为“ DriveApp 的类。 DriveApp可以创建,保存和检索文件。一旦引用了文件,就可以使用其他类,属性和方法。
答案 1 :(得分:1)
感谢你的回答@Sandy很高兴你的建议/想法我能够创建一个简单的脚本,在创建这个脚本后,我相信我也能够创建一个复杂的脚本。 我创建了一个脚本,可以在google网站的页面中创建一个表单。此表单包含我的谷歌驱动器文件的下拉列表和一个输入文件,我将在其中添加一个电子邮件地址。 并在最后一个提交按钮。
按下提交按钮后,脚本会工作,因为如果他有链接,它将授予作为文件查看者的电子邮件的选定权限。
在Google Site的Apps脚本部分中创建一个空白脚本。
通过UI服务添加一些UI
function doGet() {
// create ui element
var app = UiApp.createApplication();
// create form
var form = app.createFormPanel();
// create area or panel
var flow = app.createFlowPanel();
// create list box for files
var element_file = app.createListBox().setId('file_name').setName('file_name');
// add first elemnt
element_file.addItem('Please Select','');
// get drive files
var files = DriveApp.getFiles();
while (files.hasNext()) {
var file = files.next();
element_file.addItem(file.getName(),file.getId());
}
flow.add(element_file);
var element_text=app.createTextBox().setId('email').setName('email');
flow.add(element_text);
flow.add(app.createSubmitButton("Submit"));
form.add(flow);
app.add(form);
return app;
}
之后我处理通过帖子提交的数据
function doPost(e) {
var app = UiApp.getActiveApplication();
var email = e.parameter.email;
var file_name = e.parameter.file_name;
var public_file = DriveApp.getFileById(file_name);
public_file.addViewer(email);
return app;
}
之后,您可以检查Google云端硬盘中特定文件的权限。 您也可以添加成功消息。 在此之后转到文件的发布菜单,选择部署为Web应用程序,然后选择所需的东西。请记住,请仅选择执行脚本作为我选项,因为您列出了所有文件。 然后转到要添加脚本的页面只需编辑/添加页面编辑器中的新页面,只需插入Apps脚本即可。
道歉,这是我第一次使用谷歌应用程序脚本,如果我错过了什么或者我没有遵循任何规则等。
谢谢,