Php 拉威尔+;AngularJS存储用于post请求的会话的最佳实践

Php 拉威尔+;AngularJS存储用于post请求的会话的最佳实践,php,angularjs,laravel,session,cookies,Php,Angularjs,Laravel,Session,Cookies,我正在开发一个Laravel+AngularJS应用程序,对这种设置还比较陌生。我想知道存储会话(如用户id、电子邮件、名称等)的最佳实践是什么,这些会话将传递到表单或ajax调用中 通常,在PHP/Laravel中,可以使用$\u SESSION['userId']或$this->SESSION()->set('userId',$userId')存储它并在PHP后端获取它,以便在执行post请求时作为参数传递 但是什么是Laravel+AngularJS设置的最佳方式 饼干?本地存储 我删掉了

我正在开发一个Laravel+AngularJS应用程序,对这种设置还比较陌生。我想知道存储会话(如用户id、电子邮件、名称等)的最佳实践是什么,这些会话将传递到表单或ajax调用中

通常,在PHP/Laravel中,可以使用
$\u SESSION['userId']
$this->SESSION()->set('userId',$userId')存储它
并在PHP后端获取它,以便在执行post请求时作为参数传递

但是什么是Laravel+AngularJS设置的最佳方式

饼干?本地存储

我删掉了cookies,因为它不能处理很多信息。至于localstorage,我发现它在客户端太暴露了,因为当您检查它时很容易看到它


还有其他建议吗?

如果您的应用程序没有耦合,本地存储将更加高效。当使用登录时,您将从Laravel返回他们的所有数据,并使用angular将其存储在本地。当他们注销时,您将清除本地存储

如果您的应用程序是
SPA(单页应用程序
),请从be中检索令牌并将其存储在浏览器的
Localstorage
中。因此,您可以使用该令牌发出请求,以从BE Api获取用户数据

SPA的
中,建议不要将会话存储在BE上


但是,如果你的应用程序严重依赖BE,而不是像SPA那样使用
cookies
,那么使用
cookies
也是合适的方法。

考虑到你正在制作一个单页应用程序,你可以使用cookies本地存储会话存储

localStorage只要用户不删除信息,就会存储信息

会话存储在会话持续期间存储信息。通常直到用户关闭选项卡/浏览器

Cookie只是Cookie,受旧浏览器支持,通常是使用上述WebStore的框架的后备方案。 Cookie的存储空间更小,需要您通知用户


因此最好的做法是使用本地存储,因为会话存储是基于选项卡的

似乎大多数人都建议使用本地存储。虽然我没有在SPA上工作,因为我将要使用的应用程序有很多页面,主要是一个仪表板应用程序。我仍在考虑使用PHP会话。工作流程会像。。。XHR(传递表单字段)>PHP(合并表单字段和存储会话)>Send Request>Return Response您可以使用PHP会话,这也很好。但是,如果您想要单页架构,那么本地存储就是一种选择。。如果有帮助,请将问题标记为答案:)谢谢。尽管出于安全考虑,我还是选择使用PHP/Laravel会话来存储它。通过localStorage存储它会暴露会话,即使我对其进行解密/散列,我也不想暴露会话。似乎大多数人都建议使用localStorage。虽然我没有在SPA上工作,因为我将要使用的应用程序有很多页面,主要是一个仪表板应用程序。我仍在考虑使用PHP会话。工作流程会像。。。XHR(传递表单字段)>PHP(合并表单字段和存储会话)>发送请求>返回响应