사용자가 로그인했는지 확인하는 asp.net 웹 API가 있습니다. 디버그 할 때 API 컨트롤러에서 200 OK 응답을 받지만 나는 200 명의 응급 응답을받는 바이올린을 검사합니다. 하나는 객체가 없으면 비어 있으며, 다른 응답은 객체에 대한 응답을 포함합니다.ASP.NET 웹 API가 200을 반환하지 않습니다. 응답을 ajax에서 내 응답으로
컨트롤러 코드 내가 아약스 호출의 오류 섹션에 반환 된 응답을받을 아약스에서 성공 응답을 얻을 생각하고 또한
[HttpPost]
[Route("api/BTS_Admin/Login")]
public HttpResponseMessage AdminLogin(Admin admin)
{
Admin response = admin.LoginCheck();
if (response != null)
{
return Request.CreateResponse(HttpStatusCode.OK, response);
}
else
{
return Request.CreateErrorResponse(HttpStatusCode.NotFound, "Login Failed");
}
}
Ajax 호출 코드
$('#btnLogin').click(function() {
$.ajax({
url: 'http://localhost:61468/api/BTS_Admin/Login',
method: 'POST',
dataType: JSON,
contentType: 'application/json',
data: JSON.stringify({
Email: $('#txtUsername').val(),
Password: $('#txtPassword').val(),
}),
success: function (response) {
//localStorage.setItem('accessToken', response.access_token);
//localStorage.setItem('userName', response.userName);
window.location.href = "Data.html";
},
error: function (jqXHR) {
$('#divErrorText').text(jqXHR.responseText);
$('#divError').show('fade');
}
});
참고 : 여기가 응답입니다.
error: function (jqXHR) {
$('#divErrorText').text(jqXHR.responseText);
$('#divError').show('fade');
대신 어떤 응답을 얻습니까? 코드를 디버그하고 서버 코드가 제대로 작동하는지 확인 했습니까? –
피들러에서 서버 코드를 검사했을 때 서버 코드가 200 Ok 상태로 돌아갑니다. 그러나 나는 두 사람의 반응을 피들러하게하고있다. 하나는 200 OK 응답이고 다른 하나는 개체가없는 200 Ok 응답입니다. – Izuagbala
'btnLogin'은 정상적인 버튼입니까, 아니면 제출 버튼입니까? –