我有一个PHP项目,该项目提供了一个暴露JSON数据的api端点。这些数据的一部分是用PHP生成的序列化字符串。
在nodejs应用程序中,我可以使用php-unserialize包对这些数据进行反序列化。但是,我是Angular的一个完整的初学者,找不到AngularJS的类似软件包。
我希望能对如何在AngularJS中将字符串反序列化为JSON数据提出一些指导。 还有,在哪里可以找到AngularJS软件包?
答案 0 :(得分:0)
AngularJS框架没有服务来解码由PHP serialize序列化的数组和对象。
代替使用PHP json_encode进行编码。
我强烈建议PHP API避免使用serialize
进行数据通信。
来自匿名者: 1
请!请!请!不要序列化数据并将其放入数据库。可以以这种方式使用序列化,但是缺少关系数据库的要点和数据库引擎固有的数据类型。这样做会使数据库中的数据不可移植,难以读取并且会使查询复杂化。如果您希望您的应用程序可移植到其他语言,比如说您发现要在部分应用程序中使用Java的地方使用Java,那么序列化将很痛苦。在臀部。您应该始终能够查询和修改数据库中的数据,而无需使用第三方中介工具来处理要插入的数据。
我在职业生涯中已经遇到过太多次了,这使得难以维护代码,遇到可移植性问题的代码以及数据更加 >难以迁移到其他RDMS系统,新模式等。它还具有另一个缺点,即使您很难根据已序列化的字段之一搜索数据库。
这并不是说
serialize()
是没有用的。不是...使用它的好地方可能是例如包含数据密集型操作结果的缓存文件。还有很多其他...只是不要滥用序列化,因为下一个来的家伙会遇到维护或迁移的噩梦。
JSON Standard受大多数语言的很好支持,并广泛用于Web上的数据交换。默认情况下,AngularJS $http service自动支持它。