reset and begin
6/22/2016

Sử dụng drive của bạn để mọi người có thể upload file lên đó

Tận dụng google drive làm host upload file free vừa tiết kiệm vừa an toàn . bạn có thể Sử dụng drive của bạn để mọi người có thể upload file lên đó .

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ố .



Execute the app as: me (email cua ban@gmail.com)

Who has access to the app: Anyone, even anonymous

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


Bloger Comments
G+ Comments
Comments FaceBook

No comments:

List

Profiles Information


About me : Nothing is 1 vài thứ - 1985

Places I've Lived : I Hà Nội

Home Page : http://www.shimivn.blogspot.com/

Think : 1:1000000000

Languages spoken : Vietnamese,English.

Mobile : sony C2305

dell : i3-Ram 3GB- HDD 250GB .