【问题标题】:Check_path in Silex Firewall or SecurityServiceProviderSilex 防火墙或 SecurityServiceProvider 中的 Check_path
【发布时间】:2016-04-20 09:44:25
【问题描述】:

我尝试在 SILEX 中进行公式检查登录。

    $app['security.firewalls'] = array(
        'login' => array(
            'pattern' => '^/login$',
            'anonymous' => true
         ),
        'register' => array(
            'pattern'=>'^/register$',
            'anonymous' => true
        ),
        'chat' => array(
            'pattern'=>'^/chat$',
            'anonymous'=>false,
            //login_path: before authorisation  Check_path: path to check the date of the user
            'form'=>array('login_path'=>'/login','check_path' => '/chat/login_check'),
            'users'=> $app->share(function() use ($app){
                return new \resources\controller\UserProvider($app['db']);
            })
        )
    );

我不明白的是那个:

form'=>array('login_path'=>'/login','check_path' => '/login_check'),

如果您尝试访问安全区域,/login 是您将被路由到的路径。 /login_check 应该是检查你的数据将被检查的检查对象的路由......这对吗?

我的问题是:/login_check 后面应该是什么?我希望你能在谷歌几个小时后帮助我......

感谢您的帮助

【问题讨论】:

    标签: forms silex


    【解决方案1】:

    是的,你是对的。 /login 是用户将被路由到授权的路径。 /login_check 是检查授权表单帖子(用户名和密码)的路径。

    /login需要实现,只需为该路径添加路由并显示授权表单即可。

    <form method="post" action="/chat/login_check">
    <input type="text" id="_username" name="_username" />
    <input type="text" id="_password" name="_password" />
    ....
    </form>
    

    /login_check不需要实现,它是隐式添加实现的安全组件。此路径应位于安全区域,因此请将其更改为 /chat/login_check

    还将模式更改为 'pattern'=&gt;'^/chat',以捕获所有以 /chat 开头的请求

    【讨论】:

    • 这是否意味着我不需要表单的 POST 路由?
    • 是的,是安全组件自动添加的
    • 我现在有错误:抱歉,找不到您要查找的页面。 HttpKernel.php 第 128 行中的 NotFoundHttpException:找不到路径“/chat/login_check”的控制器。路由配置错误。
    • 您注册了安全服务提供商吗? $app-&gt;register(new Silex\Provider\SecurityServiceProvider(), [ 'security.firewalls' =&gt; $app['security.firewalls']) ]);
    • sry 我是新来的,我会试试看 :)
    猜你喜欢
    • 2018-08-20
    • 2018-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多