0
jgtを認証メカニズムとして使用して、角度jsおよびノードexpressで作業しています。私は、私のユーザー名とパスワードを投稿すると、角度のHTTP投稿を使用し、それは正常にjwtトークンを生成します。他のページをリダイレクトすることはできません。どのようにして、そのトークンを、角度JSを介して他のページのヘッダーとして設定できますか?Angular JSはHTTPポストリダイレクトで一般的なヘッダーを送信します
マイ角度コントローラは
var app = angular.module('authenticate', []);
app.controller('AuthenticateCtrl', function($scope, $http) {
$scope.login = function() {
option={'name':$scope.name,'password':$scope.password}
$http({
method : "POST",
url : "/api/authenticate",
data:option
}).then(function mySucces(response) {
$scope.message = response.data;
//$scope.getData(response.data);
$http.defaults.headers.common['x-access-token'] = response.data;
window.location.href = '/api/home';
alert("You are logged in.!");
}, function myError(response) {
$scope.message = response.statusText;
//console.log(response.data);
console.log(response.statusText);
var alertPopup = $ionicPopup.alert({
title: 'Login failed!',
template: 'Please check your credentials!'
});
});
}
});
HTMLスクリプトは、
<body ng-controller="AuthenticateCtrl">
<div class="container">
<h2>.</h2>
<input type="text" name="name" ng-model="name" placeholder="Name" required="" autofocus="" class="form-control" /></p>
<input type="password" name="password" ng-model="password" placeholder="Password" required="" class="form-control" /></p>
<button ng-click="login()" class="btn btn-lg btn-primary btn-block">Login</button>
<hr />
{{ message }}
</div>
</body>
あり、ノードjsの一部を扱うPOSTリクエストは、
apps.get('/home', function(req, res, next) {
res.sendFile(dirname+'/public/home.html');
});
しかし、リダイレクト家である、ですページ:
{"success":false,"message":"No token provided."}
メッセージ。認証失敗のメッセージです。 誰でもこの問題を解決するのを手伝ってください。
どのように迎撃や角度で働いてルーティング。あなたは例をお勧めしますか? – jicks
はい、両方の例を含めるように回答を編集しました。 – Venkat
ルータを使ってリダイレクトすると、URLの前に#があります。 – jicks