gpt4 book ai didi

javascript - AngularJS 对象序列化的缺点

转载 作者:太空宇宙 更新时间:2023-11-04 01:07:50 26 4
gpt4 key购买 nike

我正在做一个由node.js/mongodb后端提供服务的angularJS应用程序。

我的服务器提供了一个存储和返回 JSON 对象的 REST API。我的一些 mongodb 模式有几个引用,这些引用在提供给 angularJS 应用程序之前动态填充。我的一些对象是“复杂的”,即我有一个包含对象数组的对象,这些对象有对我的用户的引用。似乎当我使用 $resource 更新(PUT)服务器上的此对象时,最后一级间接寻址未处理。

而不是:

{
enrollments: [
{
price: 100,
userProfile: {
_id: 'xxxxxxxxxxxxxxxxxxxxxxx'
name: "Roger"
}
}
]
}

我有类似的东西:

{
enrollments: [
{
price: 100,
userProfile: [Object]
}
]
}

因此,我的更新删除了数据库中有关用户个人资料的信息。似乎在第三级之后序列化器停止寻找更多数据。

我在 stackoverflow 上的 AngularJS 文档中做了一些广泛的研究,但没有结果。当然是因为这个问题的普遍性。

我当前的结论是编写自定义“请求转换”来更改 JSON 序列化的方式。但有必要吗?有没有更简单的方法来解决这个问题?

谢谢,史蒂芬

最佳答案

看来您在数据库中拥有的内容与您在 Mongoose 模式中拥有的内容不对应。在已有一些现有数据后,您是否更改了 Mongoose 中的架构?这上周发生在我身上,所以这是我的第一个猜测......

您还能确认这是由于 Angular.js 造成的吗?例如,您可以尝试调试您的 Node.js 应用程序并查看它是否正常工作吗?这听起来根本不像客户端问题!

更新:

您能否确认,当使用某些 HTTP 客户端(例如 Postman REST Client )发布/获取数据时,API 工作得很好。

关于javascript - AngularJS 对象序列化的缺点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21289496/

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