将HAL 规范与FOSRestBundle集成的好的策略/方法是什么?
一种相当简单的方法是创建一个普通的 PHP 实体来表示 HAL 的整体,然后将对象与每个响应一起发回。虽然这可以很好地工作,但我认为它应该与听众集成。这需要一些思考,并且可能必须涵盖以下主题:
- 错误处理(例如异常和表单验证)
- 资源表示(例如,直接在正文中的主要资源,而在 _embedded 属性中的关联资源)
- HATEOAS(_links 指向其他 URI,例如分页)
将HAL 规范与FOSRestBundle集成的好的策略/方法是什么?
一种相当简单的方法是创建一个普通的 PHP 实体来表示 HAL 的整体,然后将对象与每个响应一起发回。虽然这可以很好地工作,但我认为它应该与听众集成。这需要一些思考,并且可能必须涵盖以下主题:
您可能会喜欢Hateoas库及其 Symfony2 包:BazingaHateoasBundle。
如果您想实现 Hal 规范,则该alterway/RestHalBundle有一个捆绑包。您不需要在 FOSRestBundle 中实现它。
对于错误处理: alterway / RestProblemBundle
看看ZF2团队的http://www.apigility.org。Apigility 以 JSON HAL 格式提供服务。这是一篇关于如何将 Symfony2 应用程序与 Apigility 集成的好文章:http ://www.zimuel.it/create-api-symfony2-apigility