使用dropzone上传照片时显示错误 [英] Show errors when uploading photo with dropzone
本文介绍了使用dropzone上传照片时显示错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
嗨我在jquery中上传图片有问题。当我上传图片时,告诉我错误。我该如何解决这个问题呢?
Hi I have problem with upload image in jquery. When i uplaod image ,show me errors. How do i solve this peroblem ?
我不能使用表格来删除区域,因为它是另一种形式。
错误:
I can't use the form to dropzone because it is in another form. Errors:
POST http:// localhost:3000 / upload 400(错误请求)
POST http://localhost:3000/upload 400 (Bad Request)
对象{错误:对象}
代码html
<div class="dropzone" action="/upload" encType="multipart/form-data" method='post' id="id_dropzone" >
<div class="dz-message">
ِDrop file here to upload
</div>
</div>
Code JQUERY
Code JQUERY
$(document).ready(function(){
Dropzone.autoDiscover = false;
$("#id_dropzone").dropzone({addRemoveLinks: true, autoQueue: true,paramName: "file", maxFilesize: 2, maxFiles: 1,
success: function (file, response) {
var imgName = response;
file.previewElement.classList.add("dz-success");
console.log("Successfully uploaded :" + imgName);
},
error: function (file, response) {
file.previewElement.classList.add("dz-error");
console.log(response);
},
maxThumbnailFilesize: 1,acceptedFiles: "image/*" });
})
代码app.js
var express = require('express');
var routes = require('./routes')();
var fileUpload = require('express-fileupload');
var path = require('path');
var app = express();
app.use(fileUpload());
app.use('/files', express.static(__dirname + '/files'));
.
.
.
app.post('/upload', function(req, res) {
var sampleFile;
if (!req.files) {
res.send('No files were uploaded.');
return;
}
sampleFile = req.files;
console.log(sampleFile);
sampleFile.file.mv(__dirname + '/files/'+sampleFile.file.name,
function(err) {
if (err) {
console.log(err);
res.status(500).send(err);
} else {
res.send('File uploaded!');
}
});
});
package.json
package.json
{
"name": "application-name",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node app.js"
},
"dependencies": {
"connect-mongo": "~0.3.3",
"ejs": "^2.5.6",
"express": "^3.21.2",
"express-fileupload": "^0.1.4",
"mongoose": "~3.6.19"
},
"devDependencies": {
"mocha": "~1.12.1",
"should": "~1.2.2",
"supertest": "~0.7.1"
}
}
推荐答案
我用以下代码解决了这个问题。
I solved this problem with the following code.
app.js
var multiparty = require('multiparty');
const fs = require('fs');
var util = require('util');
.
.
.
app.post('/file-upload', function(req,res){
var form = new multiparty.Form({autoFiles:true });
form.parse(req, function(err, fields, files) {
res.writeHead(200, {'content-type': 'text/plain'});
res.write('received upload:\n\n');
var oldpath = req.files.file.path;
var newpath = __dirname + '\\files\\' + req.files.file.name;
var readStream = fs.createReadStream(oldpath);
var writeStream = fs.createWriteStream(newpath);
readStream.pipe(writeStream);
res.end();
});
return;
});
这篇关于使用dropzone上传照片时显示错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文