Ade*_*lal 5 rest symfony fosrestbundle
所以我正在使用 fosrestbundle fosuserbundle 和 LexikJWTAuthenticationBundle 构建一个 symfony2 api,当我想访问 /api/users.json 以发布新用户时,我收到 401 错误错误凭据。
我尝试以这种方式在访问控制中添加一行:
- { path: post_user, role: IS_AUTHENTICATED_ANONYMOUSLY }
Run Code Online (Sandbox Code Playgroud)
但它没有用。
我也试过:
- { path: post_user, role: IS_AUTHENTICATED_ANONYMOUSLY, methods:[POST] }
Run Code Online (Sandbox Code Playgroud)
我怎样才能只排除 post 端点?
解决方案是创建一个新的防火墙,禁用 url 模式的身份验证。棘手的是安全配置还允许您选择防火墙覆盖的方法。
只需将其添加到 security.yml 的防火墙中:
public:
methods: [POST]
pattern: ^/api/users
security: false
Run Code Online (Sandbox Code Playgroud)
您现在可以通过 post 方法访问您的端点,并且 get put 和 delete 仍然需要您使用的任何身份验证协议:)
归档时间: |
|
查看次数: |
5000 次 |
最近记录: |