WebAPI Get||Post 请求下传递实体参数以及API跨域问题的解决

Get

前台代码

   <script>



        $(function () {
            $.ajax({
                type: "get",
                dataType: "json",
                contentType: 'application/json',
                url: "http://localhost:19930/omy360api/HomeAPI/GetToken",
                data: { "UserName": "wly666", "PassWord": "123456" },
                success: function (data, status) {
                    console.log(data);
                },
                error: function (e) {

                },
                complete: function () {

                }

            });
        });
    </script>

  /// <summary>
        /// 生成Token的令牌
        /// </summary>
        /// <param name="us">userinfo</param>
        /// <returns>Objetc</returns>
        [HttpGet]
        public object GetToken([FromUri]UserInfo us)

上图(2)为后台代码 关键在于

[FromUri]特性
Get本来传递参数是以URL字符串拼接而成的
Get类型的方法命名,应尽量采用“Get+方法名”的命名方式,且习惯性地在方法前加上[HttpGet特性]
实参与形参的匹配,遵循路由规则
GET除了可以以这种方式来实现传递实体参数,还可以传递时为字符串格式JSON后台转换。

Post
  $.ajax({
               type: "Post",
               url: "/omy360api/HomeAPI/PostToken",
               data: { "Username": "XXXXX","Password":"123456"}
            })
 [HttpPost]
        public object PostToken([FromBody]UserInfo us)

基本上这样子就够了接下来该做什么就做什么吧  实体参数这么传递就够啦~ 

不积跬步无以至千里,不计小流无以成江海~



猜你喜欢

转载自www.cnblogs.com/wyq-study/p/8981219.html