应用脚本文件上传返回文件URL到HTML页面

时间:2019-12-30 23:38:52

标签: google-apps-script

我已经修改了此脚本,以将文件上传到Google驱动器中的文件夹。但是我还需要它来将上传的文件的url链接返回到span或form字段。

我无法获取它来返回网址链接。

到目前为止,这就是我的代码。

    <!DOCTYPE html>
    <html>
     <head>
   <base target="_top">
    </head>
   <body>

 <form>
 <label>INCLUIR IMAGEM</label><input type="file" accept="image/*" capture="camera" name="imageFile"/>

   <!-- <input type="file" name="imageFile">-->
  <input type="button" value="Upload File" 
    onclick="google.script.run.withSuccessHandler(updateUrl).upload(this.parentNode)">
     </form><br/><br/>
         <div id="output"></div>
          </body>
          </html>




<script>
  function updateUrl(imageUrl) {
  var div = document.getElementById('output');
  div.innerHTML = '<span>' + imageUrl +'</span>';
  }
  </script>

code.gs

function upload(e) { 
 // Folder ID of destination folder
 var destination_id = '1qghuk1-kShw8NMJLhzmRGJJwM-dHVJ5t';
 var contentType = 'image/jpeg'; 
 var imageUrl = e.imageFile;
 var destination = DriveApp.getFolderById(destination_id);
 destination.createFile(imageUrl);
 var folder = destination.next();
 var files = folder.getFiles(); 
if (files.hasNext()) {
  // For this test, use first found file
  var file = files.next();
  var imageUrl = Drive.Files.get(file.getId()).webContentLink;


Logger.log(imageUrl);
return imageUrl;  


 }

 }

1 个答案:

答案 0 :(得分:2)

  • 您要检索上载文件的#include <sys/mman.h>

如果我的理解是正确的,那么该修改如何?我认为您HTML端的脚本是正确的。

发件人:

webContentLink

收件人:

destination.createFile(imageUrl);
var folder = destination.next();

var files = folder.getFiles(); 
if (files.hasNext()) {
  // For this test, use first found file
  var file = files.next();
  var imageUrl = Drive.Files.get(file.getId()).webContentLink;


Logger.log(imageUrl);
return imageUrl;  


 }

或者,如果您不需要使用Drive API,那么进行以下修改又如何呢?

收件人:

var file = destination.createFile(imageUrl);
var imageUrl = Drive.Files.get(file.getId()).webContentLink;
Logger.log(imageUrl);
return imageUrl;

参考:

如果我误解了您的问题,而这不是您想要的方向,我深表歉意。