Php Symfony2 FOSUserBundle如何通过json公开应用程序变量

Php Symfony2 FOSUserBundle如何通过json公开应用程序变量,php,angularjs,symfony,fosuserbundle,Php,Angularjs,Symfony,Fosuserbundle,我有一个Symfony 2.3.7应用程序,它使用FOSUserBundle进行用户管理。到目前为止,该应用程序一直是标准的MVC,使用Twig作为模板。现在,我们正在转向一个基于角度的单页应用程序,并将原始应用程序中的许多控制器转换为前端JS将调用的返回jsonresponses。这其中大部分都在进行和控制之中 我的问题是关于用户身份验证。因为我们还需要替换登录细枝,所以我试图找出管理用户身份验证的最有效方法。在《细枝》中,它非常简单: {% if app.user %} {# d

我有一个Symfony 2.3.7应用程序,它使用FOSUserBundle进行用户管理。到目前为止,该应用程序一直是标准的MVC,使用Twig作为模板。现在,我们正在转向一个基于角度的单页应用程序,并将原始应用程序中的许多控制器转换为前端JS将调用的返回jsonresponses。这其中大部分都在进行和控制之中

我的问题是关于用户身份验证。因为我们还需要替换登录细枝,所以我试图找出管理用户身份验证的最有效方法。在《细枝》中,它非常简单:

 {% if app.user %}
     {# display loggedIn user data #}
 {% endif %}

所以这个问题的一种表述方式是。。。有没有办法通过json公开全局应用程序变量(会话、用户等)?或者还有其他我还没有想到的方法吗?

实际上,您不应该在两个环境之间共享环境变量。您的登录有许多解决方案,但不应使用twig

  • 使用oauth(有一个bundle?)
  • 使用更简单的令牌身份验证(这意味着您将为symfony创建一个特殊的安全侦听器)
  • 继续使用旧的好系统,使用一个控制器发送登录信息,就像以前一样
在任何情况下,共享环境变量对我来说都不是一个好主意,因为它会带来以下问题:

  • 前端取决于后端
  • 您的代码并不像预期的那样清晰,因为几天后您将不知道每个变量的位置
  • Sf环境变量可以包含有意义的信息