FOS Rest 捆绑包:避免在 get 响应上循环引用



我有一个使用 FOS Rest bundle 完成的 REST API。我有一个用户实体和一个评论实体。所以我想得到用户的评论:/users/{idUser}/comments 但问题在于评论的响应包括用户,用户包括他的评论,评论包括用户,用户包括用户......所以我最终得到了一个巨大的 JSON 响应。

我的 getCommentsAction 控制器使用存储库和 findBy 方法,有没有办法告诉 FOS Rest Bundle 不要包含循环引用?

谢谢!

JMSSerializer是你的救星。如果您看到 Symfony FOSRestBundle 配置文档,您必须启用序列化程序才能正确解析数据。

使用JMSSerializerBundle时,您可以配置序列化程序groups,例如表单验证,并serializer知道哪些属性要向 API 公开,哪些属性不公开。

希望对您有所帮助!

最新更新