yu9851910
2018-09-01 02:17
采纳率: 90.6%
浏览 2.2k
已采纳

ajax可不可以对后台用PUT方式传送文件,后台通过restful的PUT方法接收?

@RequestMapping(value = "User", method = RequestMethod.PUT)
@ResponseBody
public String update(HttpServletRequest request, HttpServletResponse response, MultipartFile file) throws UnsupportedEncodingException {
        System.out.println(file.getName());
        return null;
}
//传送文件时总会报错,不知道AJAX要怎么写,希望建议详细点
  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 祗是辉哥哥 2018-09-03 05:54
    已采纳
     var fileObj = document.getElementById(inputId).files[i];
    // 获取要传输的文件------假设只有一个文件
    var file = document.getElementById(inputId).files[0];
    
    $.ajax({
        url: URL,
        type: "POST",  
        async: false,  
        cache: false, 
        processData: false,// 告诉jQuery不要去处理发送的数据
        contentType: false,// 告诉jQuery不要去设置Content-Type请求头
        data: file,
        success: function(data){
            alert(data);
        },
        error: function(err) {
            alert(err);
        }
    });
    

    格式大概是这样的,修改修改就行了。主要传文件注意设置contentType对就行了。

    评论
    解决 无用
    打赏 举报
查看更多回答(1条)

相关推荐 更多相似问题