Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将错误消息传递给jQuery文件上载_Javascript_Jquery_File Upload - Fatal编程技术网

Javascript 将错误消息传递给jQuery文件上载

Javascript 将错误消息传递给jQuery文件上载,javascript,jquery,file-upload,Javascript,Jquery,File Upload,我已经集成到一个JavaSpring应用程序中。返回的JSON由图片数组生成,其中图片包含“名称”、“大小”、“url”、“缩略图url”、“删除url”和“删除类型” 有时,由于缺少先决条件,我决定不接受服务器上的上载,拒绝它,因此我希望通过向客户端返回一条错误消息来通知用户 我知道可以向文件上传插件返回错误消息和错误代码,但在文档中找不到。我想我必须添加两个类似于“error\u message”和“error\u code”的字段 在哪里可以找到此文档,或者我应该返回哪些字段名。通过查看(

我已经集成到一个JavaSpring应用程序中。返回的JSON由图片数组生成,其中图片包含“名称”、“大小”、“url”、“缩略图url”、“删除url”和“删除类型”

有时,由于缺少先决条件,我决定不接受服务器上的上载,拒绝它,因此我希望通过向客户端返回一条错误消息来通知用户

我知道可以向文件上传插件返回错误消息和错误代码,但在文档中找不到。我想我必须添加两个类似于“error\u message”和“error\u code”的字段

在哪里可以找到此文档,或者我应该返回哪些字段名。

通过查看(最终文档),我发现文件上载会检查一个“错误”字段并显示该错误。我试过了,它成功了,我的错误被显示出来

JSON响应是一个对象数组,每个上传的文件一个。如果出现错误,请不要填写URL和大小。重要属性是将向用户显示的
错误
名称
大小

[ 
    {
        "error": "Image must be in JPG format",
        "url": "", 
        "thumbnail_url": "", 
        "delete_url": "", 
        "delete_type": "DELETE", 
        "name": "broken_image.jpg", 
        "size": 78191
     }
]

您可以使用data.jqXHR.responseText

像这样:

fail: function(e, data){
    console.log(data.jqXHR.responseText);
},

每个“文件”对象都可能有一个可以处理的错误变量,就像用户stivlo说的那样。

你有没有试着听“失败”事件?@Esailija,我将第二句话改得更清楚。我决定让服务器让它失败,服务器知道它失败的原因,客户端不知道,我必须通知用户,我怎么做?哦,我怎么做是返回JSON,错误属性设置为true,错误消息和这样的属性设置。我在成功回调中检查error属性,如果它是真的,我会通知错误。从未使用过这个插件,所以可能它不适用,或者?@Esailija,是的,这是原则,但是响应由插件管理,所以我必须使用它的约定,而不是通过查看源代码插件本身根本不检查服务器响应中是否有字段抛出错误,如果上传完成,服务器响应,它认为一切都是成功的。但是当发生这种情况时,它会调用带有响应的“done”回调,您不能使用“done”事件来查看是否存在错误字段吗?在JSON中返回错误消息时,如果服务器返回错误状态代码,消息将被改写。例如,如果服务器返回403,错误消息将被“禁止”覆盖。要确保使用JSON的错误消息,请确保从服务器返回成功的状态代码。问题是插件没有返回此JSON,而是返回一些无用的数据块,如文件lastModified:116790558800 lastModifiedDate:Thu Jan 04 2007 04:13:08 GMT-0600(Hora estándar del Centro)name:“000_0001.JPG”大小:971424键入:“image/jpeg”webkitRelativePath:”仅当HTTP服务器返回错误响应时才会触发此操作。这不包括从json内的上载处理程序脚本返回“error”属性。如果服务器返回200 OK,则不会调用此属性。如果服务器返回错误代码(ie-500),将调用它。在本例中,OP在服务器上失败,返回200OK,因此需要在done处理程序中对其进行解析。
done: function (e, data){
    var files = data.jqXHR.responseJSON.files;
    console.log(files);
}),