この ajax 投稿は、ユーザーが認証されている場合は正常に機能しますが、uaauthenticated ユーザーの場合、ログインへのリダイレクトに [Authorize] を使用したいと考えています。Javascript コードは以下のようになります...
$("#favorite").click(function () {
var favoriteText = $("#favorite").text();
var status = 1;
if (favoriteText == "Remove From Favorite") {
status = 0;
} else {
status = 1;
}
$.ajax({
url: '@Url.Action("AddFavorite", "MovieProfile")',
data: {
Status: status
},
dataType: 'json',
type: "POST",
success: function (data) {
alert('sucsess');
if (status == 1) {
$("#favorite").text("Remove From Favorite");
} else {
$("#favorite").text("Add To Favorite");
}
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert('readyState:' + XMLHttpRequest.readyState + ' status:' + XMLHttpRequest.status + ', status text: ' + XMLHttpRequest.statusText, +errorThrown);
}
});
});
そしてアクションは..
[HttpPost]
[Authorize]
public ActionResult AddFavorite(int Status)
{
//code goes here
}
しかし、readyState:4 status:200、status text: OK でエラーが発生します。