当我在Spring中添加CorsMapping配置时,为什么Jackson解构了我的LocalDateTime ?<



我有一个简单的API来处理Entity对象(如下所示)。

@Data
public class Entity {
private LocalDateTime createdAt;
}

如下所示的控制器:

@RestController
@AllArgsConstructor
class MyController {
private final EntityService entityService;
@GetMapping
Flux<Entity> getEntities() {
return entityService.all(); // returns all entities from some storage location...
}
}

当我向我的API发出GET请求时,我收到以下响应:

{
"createdAt": "2022-07-10T20:39:01.147915"
}

现在,我的API被设计为从不同的来源使用,这意味着我需要向我的应用程序添加一些自定义CORS配置。

为此,我创建了如下文件:

@Configuration
@EnableWebFlux
public class WebConfig implements WebFluxConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedMethods("GET", "POST")
.allowedOrigins("http://localhost:3000");
}
}
在我的API中添加了这个并且没有更改任何其他内容后,响应更改为:
{
"createdAt": [
2022,
7,
10,
20,
39,
1,
147915000
]
}

有谁知道是什么导致了这种行为吗?由于

尝试将此注释放在您的'createdAt'字段

` @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSZ", shape = JsonFormat.Shape.STRING)`

看看这个问题

相关内容

  • 没有找到相关文章

最新更新