私はmulter、multer-azure-storage、およびblueimp-file-uploadを使用しています。すべてunpkg.comから提供されています。以下は完了したトリガーを含む複数のファイルのアップロードです。 10/22/17現在作業中です。
JSファイル:
<script src="https://unpkg.com/[email protected]/dist/jquery.min.js"></script>
<script src="https://unpkg.com/[email protected]/js/vendor/jquery.ui.widget.js"></script>
<script src="https://unpkg.com/[email protected]/js/jquery.iframe-transport.js"></script>
<script src="https://unpkg.com/[email protected]/js/jquery.fileupload.js"></script>
ページのHTMLには、特急から提供:
$('#fileupload').fileupload({
url: 'https://domainwhatevs/my-listings/edit/[property id]/gallery',
paramName: '_file',
dataType: 'json',
type: 'POST',
autoUpload: true,
add: function (e, data) {
console.log('uploading:', data)
data.submit();
},
done: function (e, data) {
console.log('done triggered');
console.log(data._response.result.result[0].originalname, 'uploaded at', data._response.result.result[0].url);
$.each(data.files, function (index, file) {
// console.log(file.name, 'uploaded.')
// console.log('done');
// console.log(index);
// console.log(file);
});
console.log(data);
}
});
//私の-リスト/編集/ [プロパティID] /ギャラリー/ GET
app.get(
[
'/my-listings/edit/:_id/gallery'
],
(req, res) => {
console.log('image gallery:', req.params._id);
res.render('my-listings--edit--gallery', {
_id: req.params._id,
session: req.session
});
}
);
// POST/my-listings/edit/[プロパティID] /ギャラリー
app.post(
[
'/my-listings/edit/:_id/gallery'
],
upload.array('_file'),
(req, res, next) => {
console.log(req.files);
res.setHeader('Content-Type', 'application/json');
res.send({result: req.files});
next();
}
);
作品。 「data.result.files」を「data.files」に変更する必要があることに注意してください。 – joan16v
IE <10でファイルをプッシュするソリューションはすべて "data.submit();"です。 'add'コールバックに追加します。 –
"data.results.files"にはthumbnailUrlのようなものが多く含まれています。また、 "name"は、ファイルの名前を示すdata.filesの名前ではなく、サーバー上のファイルの実際のファイル名です。 – Ian