【问题标题】:Upload files to Google Drive using Dropzone使用 Dropzone 将文件上传到 Google Drive
【发布时间】:2015-09-13 16:23:37
【问题描述】:

这是我当前用于上传任务的代码:

$imagesDropzone.dropzone
  init: ->
    this.on 'sending', (file, xhr) ->
      xhr.setRequestHeader 'Content-Type', file.type

  url: 'https://www.googleapis.com/upload/drive/v2/files?uploadType=media'
  method: 'post'
  maxFileSize: 5
  paramName: 'images-dropzone-input'
  headers:
    'Authorization': "Bearer #{ uploadBundle.accessToken }"
  addRemoveLinks: 'dictRemoveFile'

而且它不起作用(所有上传的文件都损坏了)。 我知道我需要这样做:

xhr.send file

但我不知道在哪里打这个电话。如何覆盖 Dropzone 的 send 行为?

【问题讨论】:

    标签: ajax google-api dropzone.js


    【解决方案1】:

    看了Dropzone的源码后,我想出了一个方法,就是重写实例方法uploadFiles

    imagesDropzoneInstance = new Dropzone '#imagesDropzone',
      url: 'https://www.googleapis.com/upload/drive/v2/files?uploadType=media'
      method: 'post'
      maxFileSize: 5
      paramName: 'images-dropzone-input'
      headers:
        'Authorization': "Bearer #{ uploadBundle.accessToken }"
      addRemoveLinks: 'dictRemoveFile'
    
    imagesDropzoneInstance.uploadFiles = (files) ->
      uploadFiles: (files) ->
    
        .. copy the uploadFiles method of Dropzone, modify, then paste here..
    
        # Add the end:
        xhr.send files[0] # This overrides the default upload behavior.
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-10
      • 2012-12-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多