zoukankan      html  css  js  c++  java
  • 关于webapi post 使用多个参数的间接用法

    问题描述:

    Web Api 当使用Post提交的时候 由于只能接受一个参数 ,所以我们基本都会选择把所需要的参数,进行封装实体。

    有的时候所需要的信息在其他两个实体中,还需要重新封装也不爽。

    今天发现使用JObject 作为参数类型,可以避免自己创建实体。

    引用:using Newtonsoft.Json.Linq;命名空间

            public ResponseParam TestSend4(JObject jObject)
            {
                dynamic json = jObject;
                var jo = json.OrderInfo;
                var ju = json.UserInfo;
    
                var order = jo.ToObject<OrderInfo>();
                var user = ju.ToObject<UserInfo>();
                return new ResponseParam() { Code = 200,Msg = ""};
            }
        public class OrderInfo
        {
            public string No { get; set; }
            public decimal Price { get; set; }
            public int BuyCount { get; set; }
        }
    
        public class UserInfo
        {
            public string Account { get; set; }
            public string LoginTime { get; set; }
        }

    前台调用时,需要使用Json格式的数据提交,代码如下:

            var ajaxType = $("#ajaxType").val();
            var ajaxUrl = $("#ajaxUrl").val();
            var ajaxData = $("#ajaxData").val();
            //var jsonObj = $.parseJSON(ajaxData);
    
            var Order = { No: "D20160411", Price: 25.6, BuyCount: 10 };
            var User = {Account:"zhanglijun",LoginTime:"19870709"};
            $.ajax({
                type: ajaxType,
                url: ajaxUrl,
                data: JSON.stringify({ OrderInfo: Order, UserInfo: User }),
                contentType: "application/json",
                success: function (data) {
                    alert(data);
                    $("#ajaxResult").val(JSON.stringify(data))
                },
                error: function (XMLHttpRequest, textStatus, errorThrown) {
                    alert("异常了" + textStatus + errorThrown);
                }
    
            });

    大概就这样子,如果有问题,欢迎留言!

  • 相关阅读:
    django url 使用总结
    Django rest framework(7)----分页
    Django rest framework(6)----序列化
    Django rest framework(5)----解析器
    Django rest framework源码分析(4)----版本
    Django rest framework源码分析(3)----节流
    Django rest framework(2)----权限
    仿苹果app下载动画-煎饼
    搭建Gitlab
    npm Error: Cannot find module 'proto-list'
  • 原文地址:https://www.cnblogs.com/searchbaidu/p/5378514.html
Copyright © 2011-2022 走看看