在设计一个有角度的应用程序时出现了伪起始页

Dummy starting page in designing an angular app

本文关键字:应用程序 起始页 一个      更新时间:2023-11-24

因为我的应用程序前端是有角度的。以下是我为网络应用程序考虑的流程。

  1. 用户在浏览器中键入http://www.example.com
  2. 服务器提供一个并没有HTML的伪页面,只有angular中的javascript
  3. 现在在代码中客户端发出ajax http get请求,可能是http://www.example.com/start
  4. 现在,如果用户已登录,服务器将发送一个包含用户信息的JSON响应以供angular进入用户主页。否则,会发送一个适当的响应,并按角度进入网站的正常主页,并提供登录选项

由于我是刚接触棱角的人,我想问这是一个好的设计吗?如果不是,专家们该怎么做?我的问题不是身份验证,我的问题是,当我提供静态页面时,我必须以某种方式将用户信息传递给客户端。当客户端在浏览器url栏中键入它时,我无法用javascript代码捕获响应。这就是为什么我必须先发送一个虚拟页面,这样我就可以捕获创建一个ajax请求来捕获javascript中的响应,并与配合

此外,在angular$http.get中,angular是否自动发送上一个会话信息(cookie),或者我必须明确发送它?

我在后台使用express,nodejs作为服务器。

  1. 服务器提供一个并没有HTML的伪页面,只有angular中的javascript

在开始尝试使用AngularJS构建前端实现(最具体的单页应用程序设计)之前,您应该先了解一下AngularJS。

这是一个用AngularJS构建单页应用程序的好教程。

从本质上讲,您需要渲染一些HTML,以便加载验证用户登录状态所需的Angular应用程序和控制器。

借用移动优先设计的一些原则,如果你设计的界面在没有数据的情况下首先看起来很棒,那么你将在#3和#4之间获得不错的体验,而你的AngularJS控制器则根据你的业务逻辑决定是重定向用户还是调整$scope以某种方式影响UI。

您可以对#3使用大量不同的处理方法来向用户传达应用程序的状态(验证他们的登录、将他们重新路由到某个安全区域或拒绝他们的访问)

这样做肯定是可能的,但我建议不要这样做。根据您的用户群,世界上还有足够多的地方和设备具有网络延迟和较差的渲染能力,所以我不建议使用javascript加载完全"空"的页面。至少,要有一些静态的欢迎文本,或者在你的angular应用程序加载完成后被替换的东西。

如果配置正确,cookie应该会被传递,但我倾向于对单页应用程序使用基于令牌的身份验证。