【问题标题】:Issue with routing and user authentication in angularjsangularjs中的路由和用户身份验证问题
【发布时间】:2013-05-04 03:55:10
【问题描述】:

我正在使用 angularjs 和 nodejs 创建一个应用程序。

如何在 angularjs 中对用户进行身份验证和授权。例如,在向用户发送模板之前,我必须检查用户是否有权访问它。

还有可能向服务器发送一些请求而不是 Angular 吗?

例如,如果用户点击 www.example.com/sample#/template1,那么他将在角度路由的帮助下显示为 template1,

 $routeProvider.
  when('/', {templateUrl: '/template1',   controller: ctrl1}).
  otherwise({redirectTo: '/invalid'});

而不是这个特定的请求必须由节点服务器处理。

app.get(/sample/template1)
// do the following

提前致谢

【问题讨论】:

  • 您找到解决方案了吗?有类似的情况。
  • 目前我还没有处理身份验证部分。节点问题解决了

标签: node.js angularjs


【解决方案1】:

您的问题不太清楚,但这里有一些您可能想要调查的方向。

当前设置中的“/”路由将为您的基本 Angular 应用程序提供来自 /template1 的模板。这是您需要从节点角度支持以提供该 html 文件的 url。在您的示例路由中,用户不会被定向到 /template1,而是 /invalid,因为您使用的 URL (www.example.com/sample#/template1) 是 Angular URL。如果您希望用户从 Angular 的角度访问 /template1,他们只需访问 www.example.com/sample/。

在 node.js 方面,如果您使用 express.js,则需要使用某种类型的中间件进行身份验证,否则您将在返回 html 文件之前自行滚动。只是不要将部分 html 文件放在静态文件夹中(如果是 express.js),因为中间件检查会被绕过。

【讨论】:

    猜你喜欢
    • 2021-04-29
    • 2015-11-30
    • 2015-08-25
    • 1970-01-01
    • 1970-01-01
    • 2017-09-26
    • 2012-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多