由于Content-Type标头,多部分POST在Springboot中不断失败

时间:2018-10-24 07:29:44

标签: spring-boot postman request-headers

我正在尝试使用Spring-boot创建一个REST API,该API在内部与其他某些Application的java控制器进行通信。当我尝试使用POSTMAN将图像设置Content-Type设置为多部分/表单数据时,我不断收到错误500“ java.io.IOException:缺少初始多部分边界”。我浏览了其他一些博客,说发生这种情况是因为当我们手动将Content-Type覆盖到标题时,boundary =“”会被删除,因此我们应避免使用它。我不使用标题尝试了相同的操作,但随后出现400字样:“无效的请求标题。访问被拒绝。”。有没有人可以解决这个问题?预先感谢。

2 个答案:

答案 0 :(得分:0)

这不是您问题的直接答案,但是我认为您可以尝试在项目中使用Swagger,无需太多工作,您将获得项目的API,并且可以尝试使用微调的默认值来调用服务(例如标头中的Content-Type。

答案 1 :(得分:0)

检查是否有帮助,将内容类型用作application / json

@RestController("/image")
public class TestControllerEx {

  @PostMapping
  public ResponseEntity image(@RequestBody  Image image){
    System.out.println("Got image..."+image.getImage());
    return new ResponseEntity("success", HttpStatus.CREATED);
  }
}

public class Image {
  private byte[] image;

  public byte[] getImage() {
    return image;
  }

  public void setImage(byte[] image) {
    this.image = image;
  }
}

邮递员正文中的输入:

{"image":"dGVzdCBtZXNzYWdl"}