B1 : Đăng nhập vào tài khoản Google của bạn và vào https://www.google.com/script/start/ để tạo 1 app script nút Start Scripting
B2: tạo một file với tên form.html bằng cách vào menu File -> New -> Html file nội dung
<!-- Include the Google CSS package -->
<link rel="stylesheet" href="https://ssl.gstatic.com/docs/script/css/add-ons.css">
<!-- You can also include your own CSS styles -->
<style>
form { margin: 40px auto; }
input { display:inline-block; margin: 20px; }
</style>
<script>
// The function will be called after the form is submitted
function uploadFile() {
document.getElementById('uploadFile').value = "Uploading File..";
google.script.run
.withSuccessHandler(fileUploaded)
.uploadFiles(document.getElementById("labnol"));
return false;
}
// This function will be called after the Google Script has executed
function fileUploaded(status) {
document.getElementById('labnol').style.display = 'none';
document.getElementById('output').innerHTML = status;
}
</script>
<!-- This is the HTML form -->
<form id="labnol">
<!-- Text input fields -->
<input type="text" name="myName" placeholder="Your name..">
<input type="email" name="myEmail" placeholder="Your email..">
<!-- File input filed -->
<input type="file" name="myFile">
<!-- The submit button. It calls the server side function uploadfiles() on click -->
<input type="submit" id="uploadFile" value="Upload File"
onclick="this.value='Uploading..';uploadFile();">
</form>
<!-- Here the results of the form submission will be displayed -->
<div id="output"></div>
B3: trong khung code.gs copy code này vào
/* The script is deployed as a web app and renders the form */
function doGet(e) {
return HtmlService.createHtmlOutputFromFile('form.html')
.setSandboxMode(HtmlService.SandboxMode.NATIVE);
// This is important as file upload fail in IFRAME Sandbox mode.
}
/* This function will process the submitted form */
function uploadFiles(form) {
try {
/* Name of the Drive folder where the files should be saved */
var dropbox = form.myName + " " + form.myEmail;
var folder, folders = DriveApp.getFoldersByName(dropbox);
/* Find the folder, create if the folder does not exist */
if (folders.hasNext()) {
folder = folders.next();
} else {
folder = DriveApp.createFolder(dropbox);
}
/* Get the file uploaded though the form as a blob */
var blob = form.myFile;
var file = folder.createFile(blob);
/* Set the file description as the name of the uploader */
file.setDescription("Uploaded by " + form.myName);
/* Return the download URL of the file once its on Google Drive */
return "File uploaded successfully " + file.getUrl();
} catch (error) {
/* If there's an error, show the error message */
return error.toString();
}
}
B4: Cấp quyền cho ứng dụng chạy
Click menu Run ~> doGet để ủy quyền cho script api.
Để nó có thể có quyền truy cập các tập tin từ form.html lên Google Drive của bạn
B5 : Triển khai google api
-Tiếp theo, chọn Publish -> Deploy as web app và nhấn Save New Version,
cấp quyền truy cập vào ứng dụng bằng cách chọn trình đơn thả xuống
(bạn có thể chọn bất cứ ai cũng có thể upload file lên Google Drive của bạn bằng cách chọn các thông số .
bạn sẽ được cung cấp một địa chỉ mà bất cứ ai truy cập vào địa chỉ này đều có thể upload các tập tin lên Google Drive của bạn.
nếu địa chỉ khó nhớ thì dùng dịch vụ rút gọn link www.goo.gl
nếu địa chỉ khó nhớ thì dùng dịch vụ rút gọn link www.goo.gl
No comments: