如何解决使用 dropzone 实现 mediainfo.js 成功
我想使用这个 javascript:https://github.com/buzz/mediainfo.js
我想在 Dropzone 成功事件中实现对 mediainfo.js 中存在的函数的调用
var varFunc_Dropzone = function () {
var dzone_upload_show_poster = function () {
$('#dzone_poster').dropzone({
url: "../../assets/system/sys_upload_manager.php",method: "POST",paramName: "file",acceptedFiles: "image/*",maxFiles: 1,maxFilesize: 1,// MB
uploadMultiple: false,thumbnailWidth: null,thumbnailHeight: null,addRemoveLinks: true,timeout: 180000,dictRemoveFileConfirmation: "Sicuro?",dictFileTooBig: "File grande ({{filesize}}mb). Massimo consentito {{maxFilesize}}mb",dictInvalidFileType: "Tipo di file non valido",dictCancelUpload: "Cancella",dictRemoveFile: "Rimuovi",dictMaxFilesExceeded: "Sono consentiti un massimo di {{maxFiles}} file",dictDefaultMessage: "Trascina il file qui per effettuare Upload",success: function(file,done) {
// implement the trigger here for request MediaInfo with mediainfo.js
// I try:
// get_file_info(MediaInfo({ format: 'text' },{file}));
// var xFile = MediaInfo({ format: 'text' },(mediainfo) => {file});
// var xFile = MediaInfo({ format: 'text' },(mediainfo) => onChangeFile(file));
}
});
}
return {
init: function() {
dzone_upload_show_poster();
}
};
}();
KTUtil.ready(function() { varFunc_Dropzone.init(); });
谢谢!我希望你能帮助我!!!
解决方法
您将 dropzone 文件发送到此端点:
"../../assets/system/sys_upload_manager.php"
这可能不是您想要的。 mediainfo.js 处理用户浏览器中而不是服务器中的文件。如果您想在服务器上处理媒体文件,您需要在接收的 PHP 脚本中进行处理。如果您计划在浏览器中处理它们,则不能使用 success
事件处理程序。来自 Dropzone.js 文档:
文件已成功上传。获取服务器响应作为第二个参数。 (Source)
为了防止 Dropzone 自动上传文件,您可以按照 autoProcessQueue
中的说明将 this answer 设置为 false
。
然后您可以处理事件 addedfile
,它为您提供了一个 File
object。
有一个 simple example 如何将 mediainfo.js 与 File
对象一起使用。
免责声明:我是 mediainfo.js 的作者。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。