【问题标题】:Getting exception in JQuery file uploader在 JQuery 文件上传器中获取异常
【发布时间】:2014-03-10 19:17:34
【问题描述】:

我是 JQuery 文件上传器的新手,我正在实现其中的一部分。当我从 JQuery 文件上传器中选择图像时,调用会转到服务器端(SpringController),但 API 返回:

406 不可接受

这是我对服务器的调用:

$(this).fileupload({
        // Uncomment the following to send cross-domain cookies:
        //xhrFields: {withCredentials: true},
        url: uploadSettings.upload_url,
        type: 'POST',
        maxNumberOfFiles: uploadSettings.maxNumberOfFiles,
        maxFileSize: uploadSettings.maxFileSize,
        acceptFileTypes: uploadSettings.fileSelection,
        sequentialUploads: true,
        paramName:'uploadfiles[]',
        dataType: 'text'
    });

我的 Java 控制器代码如下:

@RequestMapping(value = { "/user/fileuploader" }, method = RequestMethod.POST, 
produces = "text/plain")


@ResponseBody public String uploadFileHandler(
@RequestParam("uploadfiles[]") MultipartFile[] file,
HttpServletRequest request, HttpServletResponse response) {

有什么建议吗?

【问题讨论】:

  • 您的后端服务告诉您,它返回的响应类型未在您的客户端请求的 Accept-Type HTTP 标头中提供。参考:en.wikipedia.org/wiki/List_of_HTTP_header_fields 1.找出服务返回的响应(内容类型) 2.在您的请求 Accept 标头中提供此(内容类型)。 en.wikipedia.org/wiki/HTTP_status_code -> 406
  • 您的意思是需要用 url 描述 content-type:'multipart/form-data'。我从控制器返回的响应是我在数据中描述的文本/纯文本:'text'。我的接受类型是“接受文本/纯文本,/;q=0.01”

标签: java jquery file-upload jquery-file-upload jhipster


【解决方案1】:

这是一个使用与 JHipster 非常相似的堆栈的项目(我是这两个项目的作者),并且使用相同的 JQuery 插件进行上传:

https://github.com/ippontech/tatami/blob/master/src/main/java/fr/ippon/tatami/web/fileupload/FileController.java#L193

如您所见,我的返回对象不同。您可以从以下位置复制我的代码:

https://github.com/ippontech/tatami/tree/master/src/main/java/fr/ippon/tatami/web/fileupload

【讨论】:

猜你喜欢
  • 2011-01-13
  • 1970-01-01
  • 2010-12-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-23
  • 2014-03-04
相关资源
最近更新 更多