0
컨트롤러에 ActionResault를 호출하는 웹 양식에 Ajax가 있습니다. 응답 상태 코드를 200으로 설정하더라도 문제가 있습니다. , ...) 아약스에서 오류가 여기 내 Ajax와 컨트롤러가있을 실 거예요 그래서 Ajax는 200 응답을 얻을 것이다 :Web Form 응답 상태 코드 컨트롤러가있는 아약스의 경우 항상 200입니다.
$.ajax({
beforeSend: function (jqXHR, settings) {
xhr = jqXHR; // To get the ajax XmlHttpRequest
},
url: url + "Accounts/Login",
type: 'POST',
dataType: 'json',
contentType: 'application/json; charset=utf-8',
data: JSON.stringify(loginDataModel),
success: function (result) {
alert(result);
if (result==0) {
document.location.href = '/Controlpanel/DashBoard.aspx';
}
}, error: function (jqXHR, exception) {
var msg = '';
if (jqXHR.status === 0) {
msg = 'عدم اتصال به اینترنت';
} else if (jqXHR.status == 401) {
msg = 'اطلاعات وارد شده صحیح نمی باشد';
} else if (jqXHR.status == 500) {
msg = 'خطایی در هنگام پردازش درخواست شما رخ داد.';
} else if (exception === 'parsererror') {
msg = 'Requested JSON parse failed.';
} else if (exception === 'timeout') {
msg = 'درخواست شما در بازه زمانی مورد نظر پردازش نشد';
} else if (exception === 'abort') {
msg = 'Ajax request aborted.';
} else {
msg = $.parseJSON(jqXHR.responseText).ErrorMessage;
}
$(".message").text(msg);
},
})
그리고 어떤 도움이 될 것이 내 ActionResault
public HttpStatusCodeResult Login(LoginBindingProcessModel loginDataModel)
{
if (userRole != null)
{
HttpContext.GetOwinContext().Authentication.SignIn(new Microsoft.Owin.Security.AuthenticationProperties { IsPersistent = loginDataModel.isPersistent }, userRole);
}
if (objUserVerification == UserVerificationResult.SuccessfullyVerified)
{
Response.StatusCode = (int)System.Net.HttpStatusCode.OK;
return Json(objUserVerification);
}
else
{
Response.StatusCode = (int)System.Net.HttpStatusCode.Unauthorized;
return Json(objUserVerification);
}
}
입니다 감사합니다.
'HttpStatusCodeResult'와'JsonResult'는 할당 가능하지 않고 암시 적으로 하나를 다른 것으로 변환 할 수 없기 때문에 액션 결과 코드를 컴파일해서는 안됩니다. – Nkosi
@ Nkosi 귀하의 도움에 감사드립니다 .so 당신은 내가 반환하는 행동의 유형을 반환하도록 제안합니까? – nader
나는 아무것도 제안하지 않았다. 나는 당신이 현재 가지고있는 것이 당신이 묘사 한 행동을 얻기 위해 컴파일해서는 안된다는 것을 말하고있었습니다. 액션의 반환 유형을 'ActionResult'를 시작으로 가장 낮은 공통 유형으로 변경 한 다음 설명 된 동작을 얻는 이유를 조사 할 수 있습니다. – Nkosi