如何解决更新映像时在springboot mongo中出现错误,一切似乎都很好
向我的服务提交数据时,出现以下错误:
已解决[org.springframework.web.multipart.support.MissingServletRequestPartException:所需的请求部分'实体'不存在”错误,并且不知道我错过了什么建议会有所帮助
不知道使用类似的api是什么问题
@CrossOrigin(origins = "*",maxAge = 3600)
@RestController
@RequestMapping("/api/entity")
public class EntityController {
@Autowired
IEntityRepository entityRepository;
@RequestMapping(value = "/updateEntity",method = RequestMethod.POST,consumes = "multipart/form-data")
public ResponseEntity<Entity> updateEntity(@RequestPart("entity") @Valid Entity entity,@RequestPart("file") @Valid Optional<MultipartFile> image) throws IOException {
// routine to update a entity including image
byte[] imageData = null;
if (image.isPresent() && image.get() != null)
imageData = image.get().getBytes();
if (imageData == null && entity.getId() != null) {
Optional<Entity> readEntity = entityRepository.findById(entity.getId());
if (readEntity.get() != null)
imageData = readEntity.get().getImage().getData();
}
if (imageData != null) {
entity.setImage(new Binary(BsonBinarySubType.BINARY,imageData));
}
Entity result = entityRepository.save(entity);
return ResponseEntity.ok().body(result);
}
Models (did not add constructor or getters and setters)
public class Entity {
@Id
private String id;
private Types types;
private String username;
private String name;
private String surname;
private Binary image;
private String address;
private String email;
private String contactNo;
private String country;
private Status status;
private List<UserRolls> userRolls;
private MemberShip memberShip;
private Staff staff;
private Payee payee;
private List<BankAccount> userBankAccount;
private String loginCode;
@NotBlank
@Size(max = 120)
private String password;
React snippet using values from formik and getting the binairy data from the image im selecting,dont suspect it to be the image
async function submitForm(values) {
/* routine to send the request to the server/*
const formData = new FormData();
var postData = values;
formData.append(
'bank',new Blob([JSON.stringify(postData)],{
type: 'application/json',})
);
if (imageData) {
formData.append('file',imageData);
}
//Send Api request
return Api(`auth/updateUser`,'Post',formData);
}
解决方法
问题在前端出现了拼写错误,我提交并附加银行应更改为实体
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。