[英]How to work with groups in Hateoas PHP library?
我在Symfony中使用Hateoas庫。
我有一個Doctrine實體,想限制某些嵌入式內容。 我看到Hateoas排除了組,但是我不知道如何配置它們,並且在lib文檔中也沒有找到任何相關信息。 任何幫助,將不勝感激。
如果您在實體中定義序列化程序組
class Client
{
/**
* @var integer
*/
private $id;
/**
* @var string
*
* @JMS\Expose
* @JMS\Groups({"default", "full"})
*/
private $firstName;
...
}
您還應該在HATEOAS批注(或您使用的配置系統)中定義它
* @Hateoas\Relation("_self",
* href = @Hateoas\Route("api_clients_get_client", parameters = {"id" = "expr(object.getId())"}, absolute = true),
* exclusion = @Hateoas\Exclusion(groups={"default","full"})
* )
這是有道理的,因為如果您不公開屬性,則不想公開鏈接。
即您有兩個組“公共”和“管理員”
在管理員中,您可能會將隱藏的內容公開給您的api公開調用。 但是,如果您無法控制要在呼叫中公開的HATEOAS鏈接,則可能會在“公開”呼叫中公開不需要的鏈接
本節涵蓋了排除: https : //github.com/willdurand/Hateoas#exclusion 。 您可能應該改寫您的問題,以便我們可以更好地為您提供幫助。
我個人花了很多時間編寫此文檔,很高興知道缺少的內容;-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.