这是我当前用于上传任务的代码:
$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
但是我不知道该打电话给哪里。如何覆盖send
Dropzone的行为?
在查看了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.
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句