【发布时间】:2016-05-23 00:52:38
【问题描述】:
首先是代码:
客户端代码:
let formData = new FormData();
formData.append('upload', dataURLtoBlob(dataUrl));
$.ajax({
url: '/Api/File', //Server script to process data
type: 'POST',
headers: {
'authorization': 'Bearer ' + window.localStorage.aurelia_token
},
//Ajax events
success: (uuid) => {
alert(uuid);
},
error: () => {alert('Error!');},
// Form data
data: formData,
//Options to tell jQuery not to process data or worry about content-type.
cache: false,
contentType: 'multipart/form-data',
processData: false
});
服务器端代码:
var file = req.file('upload');
//var extension = file.fd.slice((file.fd.lastIndexOf(".") - 1 >>> 0) + 2);
//var newName = uuid.v4();
//file.fd = newName + extension;
file.upload({
// don't allow the total upload size to exceed ~4MB
maxBytes: 5000000,
adapter: require('skipper-s3'),
key: sails.config.auth.aws.key,
secret: sails.config.auth.aws.secret,
bucket: 'bucketName'
}, function whenDone(error, uploadedFiles) {
...
我有两个问题:
1) 似乎没有文件通过。我不确定我在哪里丢失了文件,因为 dataURLtoBlob 肯定会产生一个 blob...
2) 在将文件发送到亚马逊之前如何操作文件名(您可以在注释掉的行中看到我试图做什么)?
提前致谢。
【问题讨论】: