【发布时间】:2013-09-19 14:44:09
【问题描述】:
我们有一个 Angular 应用程序和另一个 Spring 应用程序。登录由 Spring 管理,当用户登录时,Spring 重定向到 Angular 应用程序。当 Spring 重定向时,它会在 header 中放置一个身份验证令牌。
如何使用 Angular 获取此令牌?
【问题讨论】:
标签: security spring-mvc angularjs single-sign-on token
我们有一个 Angular 应用程序和另一个 Spring 应用程序。登录由 Spring 管理,当用户登录时,Spring 重定向到 Angular 应用程序。当 Spring 重定向时,它会在 header 中放置一个身份验证令牌。
如何使用 Angular 获取此令牌?
【问题讨论】:
标签: security spring-mvc angularjs single-sign-on token
由于 AngularJS 是 javascript,您可以在 HTML 的某个地方回显该标记。这是一次重定向到您的 angularApp。我这样做了
<meta name="csrf-token" value="xxxx-xxx" />
并且要从 Angular 将 http 调用发送回您的 Spring 应用程序,我相信您也必须在标头中发送该令牌(例如 X-Token),这可以像
window.ngApp = angular.module('ngApp',[]);
ngApp.config(["$httpProvider", function(provider) {
provider.defaults.headers.common['X-Token'] = $('meta[name=csrf-token]').attr('content');
}]);
因此,每次发出 http 请求时,X-Token 都会成为您请求的一部分。
【讨论】: