有人可以告诉我为什么symfony没有阅读正确的PHPSESSID
而是阅读其中一些(例如下面的例子),我使用LEXIK进行身份验证,使用FOSRestBundle进行API。以下是安全配置(我认为就是这样)。这导致了问题,但我不确定,
我发送phpsessid
权利
安全配置
security:
providers:
in_memory:
memory: ~
user_provider:
id: app.user_provider
firewalls:
login:
pattern: ^/api/login
stateless: false
anonymous: true
api:
pattern: ^/api
provider: user_provider
stateless: true
guard:
authenticators:
- lexik_jwt_authentication.jwt_token_authenticator
access_control:
- { path: ^/api/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/api, roles: IS_AUTHENTICATED_FULLY }
更新1
丢失会话后,我的userprovider无法验证用户,因此会出现此错误
答案 0 :(得分:1)
如果您正在讨论的是JWT
身份验证,则它是基于令牌的身份验证,因此不会使用PHPSESSID
。
它传递一个令牌,其中包含在服务器上验证的每个请求。
REST的工作方式类似于无状态的HTTP,因此服务器上的REST客户端没有会话。