加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 如何从ajax调用web api Controller

发布时间:2020-12-16 07:29:31 所属栏目:asp.Net 来源:网络整理
导读:我是带有web api的ASP MVC的初学者. 通过使用下面的代码,我试图调用一个写在控制器上的函数.为了检查我使用了断点,所以控件无法进入控制器,因此我无法实际跟踪发生了什么. 给定的代码解释了如何将用户名和密码传递给控制器??: script type="text/javascript
我是带有web api的ASP MVC的初学者.

通过使用下面的代码,我试图调用一个写在控制器上的函数.为了检查我使用了断点,所以控件无法进入控制器,因此我无法实际跟踪发生了什么.

给定的代码解释了如何将用户名和密码传递给控制器??:

<script type="text/javascript">
function Login() {
var Login = {};
Login.username = document.getElementById("txtUserName").value;
Login.password = document.getElementById("txtPassword").value;
$.ajax({

URL: 'api/Login/' + Login,type: 'POST',dataType: 'json',contentType: 'application/json; charset=utf-8',data: JSON.stringify(Login),success: function (data) {

alert("Saved successfully");
}
})
}
</script>

这是我以前通过的控制器

public class LoginController : ApiController
{
[HttpPost]
public void  Login(Login  login)
{
string user = login.UserName.ToString();
string password = login.Password.ToString();
}

}

解决方法

基本上它是URL vs url上的区分大小写问题以及一些不必要的工作.所以将脚本更改为:

<script type="text/javascript">
    function Login() {

      var Login = {};
      Login.username = $("#txtUserName").val();
      Login.password = $("#txtPassword").val();

      $.ajax({
         url: '/api/Login/',method: 'POST',data: Login,success: function (data) {
          alert("Saved successfully");
         },fail : function( jqXHR,textStatus ) {
          alert( "Request failed: " + textStatus );
        }
     })
  }
</script>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读