gpt4 book ai didi

rest - 在 Spring data rest 中,可以通过 POST/parent/{parentId}/nested 将嵌套的@OneToMany 对象添加到父级?

转载 作者:行者123 更新时间:2023-12-01 06:28:52 25 4
gpt4 key购买 nike

我有 Parent 和 Nested 对象。我可以获得嵌套列表,使用 GET /parent/{parentId}/nested但我不能成功地发布/放置它。在 POST 结果中,我得到 HTTP 204 并且父级有空的嵌套对象列表。

在日志中我看到 Hibernate 没有在数据库中插入任何东西。在调试过程中,我看到用于反序列化的 Jackson Object Mapper 将“org.springframework.hateoas.Resources<java.lang.Object>”作为 JavaType。

这是我的 POST 的真实示例: curl 'http://localhost:8000/api/users/402880e554b8f7960154b8f7adbc0000/orders/' -i -X POST -H 'Authorization: Basic OLOLO==' -H 'Accept: application/json' -H 'deviceCurrencyCode: USD' -H 'Content-Type: application/json; charset=UTF-8' -d '{"orderPrice": 0,"tax": 0,"shippingCost": 0,"credits": 0,"addresses": [{"firstName": "Figli","lastName": "Migli","zipCode": "5555","city": "Riga","country": "Tlmltr","phone": "7777","address": "Adddr"}],"status": "status"}'

我知道可以做到 POST /nested '{"parent":"/link/to/parent"}' .但是,如果这是通过父对象获取嵌套对象的方法,为什么我不能以这种方式发布/放置/修补它们?我查了一下,它是 RESTfull 的吗,似乎是。

最佳答案

有一个部分"The association resource"在 spring data rest 文档中,告诉您此资源的可能性。并且不可能创建一个新的 child 并将其关联起来。

我不知道这是为什么。

获得此行为的唯一方法(我知道)是实现一个为您执行此操作的自定义 Controller 。 (确保您没有在自定义 Controller 的类级别上使用 @RequestMapping 注释,以免覆盖比您想要的更多的 spring 数据 rest 功能)

关于rest - 在 Spring data rest 中,可以通过 POST/parent/{parentId}/nested 将嵌套的@OneToMany 对象添加到父级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37278662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com