Javascript 不使用ajax在angularjs和express/node之间传递数据
我有一个AngularJS应用程序在node/express后端运行。我正在使用passport进行用户身份验证 当用户登录或注册时,我的angular控制器通过Javascript 不使用ajax在angularjs和express/node之间传递数据,javascript,node.js,angularjs,express,Javascript,Node.js,Angularjs,Express,我有一个AngularJS应用程序在node/express后端运行。我正在使用passport进行用户身份验证 当用户登录或注册时,我的angular控制器通过$httpajax/xhr调用与express通信。表单数据被发送,node/express/passport处理数据,并返回带有用户信息(即用户名)的json数据 Angular然后使用用户信息更新我的模板,即{{user.username} 问题是,如果用户刷新整个页面,Angular将丢失此用户信息。他们仍然登录-req.user
$http
ajax/xhr调用与express通信。表单数据被发送,node/express/passport处理数据,并返回带有用户信息(即用户名)的json数据
Angular然后使用用户信息更新我的模板,即{{user.username}
问题是,如果用户刷新整个页面,Angular将丢失此用户信息。他们仍然登录-req.user
仍然包含他们的信息-但angular不知道
我希望避免仅仅为了检查用户是否登录而调用ajax。这将是一个额外的http调用每一个新的访问
我可以直接将用户数据传递给jade模板,但不能在以后更新 我认为解决问题最简单的方法就是使用。我更喜欢 只需检查下面给出的示例,在文本字段中输入您想要的任何内容,然后刷新浏览器并查看 因为一个
AngularJS
模块使得Web存储以角度的方式工作。包含两项服务:$localStorage
和$sessionStorage
与其他实现的差异
- 没有Getter'n'Setter胡说八道-就在AngularJS主页上:“与其他框架不同,没有必要[…]用accessors方法包装模型。这里只需要简单的旧JavaScript。”现在,您可以在通过Web存储实现数据持久性的同时享受同样的好处
- 会话存储-我们已经涵盖了这一经常被忽略的问题
- 编写清晰的代码——以有角度的方式编写,结构良好,考虑到可测试性
- 没有Cookie回退-由于AngularJS官方支持的所有浏览器都可以使用Web存储,这种回退在很大程度上是多余的