php-“ .default”在Symfony服务ID中是否有特殊意义?
作者:互联网
我正在查看FriendsOfSymfony/FOSOAuthServerBundle中的一些服务定义,对我来说很突出,它有fos_oauth_server.storage.default的定义,但是同一文件中的另一个服务列出了fos_oauth_server.storage,没有.default部分作为依赖项.这里有某种通配符吗,还是…?这是Symfony文档中没有特别清楚的内容.
解决方法:
id fos_oauth_server.storage是指向存储服务的别名,默认情况下为fos_oath_server.storage.default.在应用程序的配置中,您可以使用自定义服务替换该存储,如捆绑软件的Configuration或Configuration reference in the docs所示.在捆绑软件的扩展类内,您可以看到应用程序配置如何连接到捆绑软件的服务配置中以及该the alias points to the configured service(默认或您自己的).
所有需要oauth存储的服务(包括应用程序中的类)都应仅引用别名,以便可以轻松替换基础(默认)存储,而无需触及使用该存储的代码.
该概念广泛用于捆绑软件中,基础服务的命名约定也有所不同.另一种常见的命名方案(尤其是在可以配置多个选项的情况下)是附加其服务类型,例如fos_oauth_server.storage.mysql,fos_oauth_server.storage.redis等.除了是一种更好地区分别名和别名可以指向的具体实现的方法之外,Symfony中的.default没有特殊意义.
标签:symfony,php,fosoauthserverbundle 来源: https://codeday.me/bug/20191211/2106343.html