2016-05-24 7 views
0

私はMVCプロジェクトのWeb APIから結果を得るためにAjaxを呼び出します。 $アヤックスajaxで匿名関数エラーが発生する

http://mylink.cloudapp.azure.com/searchuser 404(見つかりません)匿名

x.extend.ajax:ページが動作しますが、生産にそれが動作していないと、正確にこのラインで私の.jsファイルで、このエラーを与える私の地元で機能

これは私の.jsファイルです:

$(document).ready(function() { 
$('#btnSearch').click(function (evt) { 
    // debugger; 
    if (ValidateInput()) { 
     var data = { 
      LastName: $.trim($('#LastName').val() || ''), 
      Zip: $.trim($('#Zip').val() || ''), 
      Ssn: $.trim($('#Ssn').val() || '') 
     }; 
     var token = $('[name=__RequestVerificationToken]').val(); 

     $.ajax({ 
      dataType: "json", 
      //headers: { "__RequestVerificationToken": token }, 
      data: data, 
      url: '/searchuser', 
      type: 'POST', 
      cache: false, 
      success: function (result) { 
       console.log(result); 
       if (result && result.success) { 
        $('#ApplicationId').val(result.data.applicantId); 
        if (result.data.exception == null) { 
         $('#stepTwo').show();       
         $('#EmailAddress').val(result.data.userEmailAddress); 
        } 
        else { 
         $('#txtareaResponse').val(result.data.exception); 
        } 
       }     
      }, 
      error: function() { debugger; alert('failure'); } 
     }); 
    } 
}); 

、これが私のビューの上部にある:

<script src="~/Scripts/jquery-1.10.2.min.js"></script> 

<link href="~/Content/Loan.css" rel="stylesheet" /> 
<script src="~/Scripts/Verify.js"></script> 

これは、コントローラのメソッドです:

[AllowAnonymous] 
    [Route("searchuser")] 
    [HttpPost] 
    public async Task<ActionResult> SearchUser(UserInfo userInfo) 
    { 
     object userObject = null; 
      if (userInfo.LastName != null && userInfo.Zip != null && userInfo.Ssn != null) 
      { 
       string accessKey = CreateAccountKey(userInfo.LastName, userInfo.Zip, userInfo.Ssn); 

       UserKey userKey = new UserKey(); 
       userKey.AccountKey = accessKey; 
       //var response = await httpClient.GetAsync(string.Format("{0}{1}/{2}", LoanApiBaseUrlValue, "/verifyuser", accessKey)); 
       var response = await httpClient.PostAsJsonAsync(string.Format("{0}{1}", LoanApiBaseUrlValue, "/verifyuser"), userKey); 
       if (response.IsSuccessStatusCode) 
       { 
        userObject = new JavaScriptSerializer().DeserializeObject(response.Content.ReadAsStringAsync().Result) as object; 
        var json = response.Content.ReadAsStringAsync().Result; 
        var userVerify = new JavaScriptSerializer().Deserialize<VerifyUser>(json); 
       } 
      } 
      var respone = new 
      { 
       success = userObject != null, 
       data = userObject 
      }; 
      return Json(respone, JsonRequestBehavior.AllowGet); 
     } 
+0

_ "404(見つかりません) "_"/searchuser "が指すURLへの完全なパスは何ですか? – guest271314

答えて

1

カミソリの構文を使用するだけで、あなたのAJAX呼び出しでもActionResult

[AllowAnonymous] 
[Route("searchuser")] 
[HttpPost] 
public ActionResult SearchUser(..){..} 

を返してみ

$.ajax({ 
    url: "@Url.Action("method", "Controller")", 
    type: "GET", 
    data: {}, 
    success: function (data) { 
      //do stuff... 
    } 
});