私の RestEasy コードは、303 応答を angularjs コントローラーにディスパッチします。さらに、Chrome ネットワークのデバッグでは、HTTP 303 が受信されたことと、新しい URL が読み込まれたこと (HTTP 200 として表示) の両方が表示されますが、表示されません!
ブラウザから直接 RestEasy エンドポイントを呼び出そうとすると、うまくリダイレクトされます!
しかし、悲しいかな、私の angularjs コントローラーはブラウザーを更新できないようです - 同じページに置かれたままです!
これが私のangularjsコントローラーです:
var mod = angular.module('login', []);
mod.controller('RestController', [
'$http',
'$scope',
function($http, $scope) {
$scope.submit = function(v1, v2) {
$http.post("rest/login/submit", {
param1 : v1,
param2 : v2
}).success(function(data, status, headers, config) {
$scope.submitmsg = "";
}).error(function(data, status, headers, config) {
$scope.submitmsg = "Error...";
});
}
} ]);
私の質問は簡単です。ブラウザ ページの更新を処理するために何か特別なことをする必要があります。おそらく、$scope変数または$docなどを設定しますか?? それとも、関数の error() 部分で何らかの処理を行う必要がありますか? 303 コードに対処するためですか?
どんな助けでも大歓迎です。すべてのテストは Chrome で行われました。