我有一个使用Symfony2.8的网站;我正在开发一个移动应用程序,它将使用与后端相同的项目,因此我需要支持基于令牌的身份验证以及常规登录表单。我发现的所有资源都谈到了仅API身份验证而不是API(基于令牌)和表单。任何人都有任何想法如何实现这一目标?
如果重要,我正在使用FOSUserBundle。
答案 0 :(得分:1)
您可以通过为每种情况使用自定义身份验证器来完成此操作。
Symfony 2.8 introduced Guard,这使得创建自定义身份验证器变得相对容易。
基本上,您创建了2个自定义身份验证器,这实际上意味着创建2个服务。
创建这些服务后,您只需将其注册为Authenticators
即可app/config/security.yml
中的
security:
...
main:
anonymous: ~
knpu_guard:
authenticators:
- app.form_login_authenticator
- app.api_token_authenticator
entry_point: app.form_login_authenticator
显然,您需要实施这些服务,但Symfony Docs确实为您提供了一个不错的起点。
检查这些链接是否相同: