Spring 尝试以文本/纯文本形式发送请求正文时获取415不支持的媒体类型
我有一个API,它接受json和文本作为请求体Spring 尝试以文本/纯文本形式发送请求正文时获取415不支持的媒体类型,spring,jsr,Spring,Jsr,我有一个API,它接受json和文本作为请求体 @Path("submitObjects") @Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN}) @Consumes({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN}) public List<APIResult> submitMultiObjects(@DefaultValue("false") @QueryPa
@Path("submitObjects")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
@Consumes({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
public List<APIResult> submitMultiObjects(@DefaultValue("false") @QueryParam(("suppressWarnings"))Boolean suppressWarnings,List<MyObject> objects) {
// API logic
}
class MyObject{
private String name;
private String description;
// and getters and setters
}
上述请求机构成功
name=name1
description=description1
name=name2
description=description2
但当我以纯文本形式传递请求正文时,它将失败,错误代码为415-不支持的媒体类型
name=name1
description=description1
上述请求正文失败
name=name1
description=description1
name=name2
description=description2
上述请求正文失败
name=name1
description=description1
name=name2
description=description2
我想知道如何以纯文本格式传递对象列表。
对于下面的API,我使用MyObject而不是List
@Path("submitObject")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
@Consumes({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
public List<APIResult> submitObject(@DefaultValue("false") @QueryParam(("suppressWarnings"))Boolean suppressWarnings,MyObject object) {
// API logic
}
上述请求正文工作正常。如何调用该函数?它是rest api。我用上面提到的请求主体向url localhost:8000/submitObjects发出了POST请求。我的服务器正在端口8000上运行。作为内容类型标头发送什么?我使用了-'content-type:text/plain'curl--location--request-POST'localhost:8000/submitObjects'--header'content-type:text/plain'--data-raw'name=name1 description=description1'