我有一个javaapi,它应该接受一个文件列表,然后通过电子邮件发送给用户。api如下:
@POST
@Path("/echoapi")
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Produces(MediaType.APPLICATION_JSON)
public Response getNotificationByUser(@FormDataParam("name") String name, @FormDataParam("email") String email, @FormDataParam("file") InputStream file) {
try {
List<InputStream> attachments = new ArrayList<>();
attachments.add(file);
EmailUtils.sendEmail(name, email, attachments);
Gson gson = new Gson();
String json = gson.toJson("");
return Response.ok().entity(json).build();
}
catch(Exception e) {
return Response.status(HttpStatus.SC_INTERNAL_SERVER_ERROR).build();
}
}
当使用postman(出于测试目的)向这个api发送以下请求时,我得到一个400响应
标题:
正文:
如果我将方法的签名更改为:
public Response getNotificationByUser(String requestBody)
一切正常!但是,我需要访问api中的数据,而不是作为字符串,因此这是不够的
暂无答案!
目前还没有任何答案,快来回答吧!