spring boot 1.3.5 PUT方法接收参数
博客专区 > Landas 的博客 > 博客详情
spring boot 1.3.5 PUT方法接收参数
Landas 发表于2年前
spring boot 1.3.5 PUT方法接收参数
  • 发表于 2年前
  • 阅读 140
  • 收藏 1
  • 点赞 1
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

单位Android客户端POST/PUT请求的contentType统一封装为Multipart/form-data,

后台服务使用框架为Spring Boot 1.3.5RELEASE。在使用默认配置时,Controller可以在POST请求中用request.getParameter("")正常接收参数,但遇到PUT请求时接收参数为空。

查找原因后发现springMVC默认的PUT处理没有包含multipart,试过多种配置后,在配置类(@Configuration)中加入以下代码即可正常处理:

@Bean
public MultipartResolver multipartResolver() {
    return new StandardServletMultipartResolver() {
        @Override
        public boolean isMultipart(HttpServletRequest request) {
            String method = request.getMethod().toLowerCase();
            //By default, only POST is allowed. Since this is an 'update' we should accept PUT.
            if (!Arrays.asList("put", "post").contains(method)) { return false; }
            String contentType = request.getContentType();
            return (contentType != null &&contentType.toLowerCase().startsWith("multipart/"));
        }
    };
}

原文地址:http://i-proving.com/tag/multipartform-data/

最后google大法好!

共有 人打赏支持
粉丝 2
博文 9
码字总数 15516
×
Landas
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: