我正在开发一个AngularJs项目,我对网络很新。我想要实现的是简单的登录。我已经在服务器端(nodejs)以及客户端实现了令牌基础身份验证。
一切似乎都很棒。除非我尝试
此。$ window.location.href
当我点击登录时,为了测试我的身份验证是否正常工作,我已将$ http.get调用到授权的终点,它可以完美地运行。然后我调用nodejs(serve)来为我提供给定端点上的页面,该端点需要授权令牌头。但它没有发送。
public loginClick = () => {
this.authService.login(this.user).then(msg => {
console.log("success");
this.$http.get(Config.apiEndpoint().url + '/memberinfo').then(result => {
console.log(result.data); //<== this works
var landingUrl = "http://" + this.$window.location.host + "/dashboard/";
this.$window.location.href = landingUrl; //<== this does not works
});
}, errMsg => {
console.log("failes");
});
}
nodejs代码
app.get('/', moduleRoutes.root);
app.get('/dashboard/', moduleRoutes.root);
export function root(req: express.Request, res: express.Response) {
if (authorization.isAuthorized(req, res)) {
res.sendfile('./public/views/index.html');
} else {
res.sendfile('./public/views/login.html');
}
};
答案 0 :(得分:-1)
你应该使用这样的$ location:
public loginClick = () => {
this.authService.login(this.user).then(msg => {
console.log("success");
this.$http.get(Config.apiEndpoint().url + '/memberinfo').then(result => {
console.log(result.data);
$location.path('/dashboard');
});
}, errMsg => {
console.log("failes");
});
}
谢谢&amp;干杯强>