当前位置: 首页 > 知识库问答 >
问题:

内容类型'Application/x-www-form-urlencoded; charset=UTF-8'不支持

曹焱
2023-03-14

@PostMapping public UserResponse createUser(@RequestBody UserRequest userDetail){

    UserResponse returnValue = new UserResponse();
    UserDto userDto = new UserDto();

    BeanUtils.copyProperties(userDetail, userDto);

    UserDto storedData = userService.createUser(userDto);
    BeanUtils.copyProperties(storedData, returnValue);

    return returnValue;
}

这是我收到的错误代码

{
"timestamp": "2020-05-13T12:24:04.866+0000",
"status": 415,
"error": "Unsupported Media Type",
"message": "Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported",
"path": "/users"

}

我尝试了很多不同的方法仍然没有得到解决方案这是来自邮递员的图片来自邮递员的图片

共有2个答案

鞠边浩
2023-03-14

这是因为您的服务只接受应用程序/json内容类型。如果您想接受应用程序/x-www-form-urlencoded,您可以添加消耗=MediaType。APPLICATION_FORM_URLENCODED_VALUE在@PostMaps注释中

下面是接受application/json并给出application/json响应的服务示例。

@PostMapping(path = "/v1/agent/create", consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
    public ApiResponseWrapperDto createAgent(@RequestBody ApiRequestWrapperDto request) throws Exception {
        return this.agentManagementApiHandler.createAgent(request);
}

希望这能解决你的问题。

谢啦

颜瀚漠
2023-03-14

您是否使用Postman来触发请求?您可能需要检查这些设置

 类似资料: