• Nancy如何接收POST过来的Json数据


    • 发送端设置

              
              //Url为接收端地址
              HttpWebRequest request = HttpWebRequest.Create(Url) as HttpWebRequest; //进行HTTP Post提交 request.Method = "POST"; //Content-Type仅支持json或xml if ("json".Equals(format.ToLower())) { request.ContentType = "application/json;charset=utf-8"; } else// if ("xml".Equals(format.ToLower())) { request.ContentType = "application/xml;charset=utf-8"; }           busiParams="{"CategoryName": "something"}"; //将业务级参数busiParams用String流进行post请求至服务端 log.Info("日志记录”); requestStream = request.GetRequestStream(); byte[] dataByte = Encoding.GetEncoding("utf-8").GetBytes(busiParams); requestStream.Write(dataByte, 0, dataByte.Length); responseStream = request.GetResponse().GetResponseStream(); //打印输出结果 text = Utils.StreamToString(responseStream); log.Info("日志记录");
    • 使用POSTMAN发送JSON进行测试,进行如下设置:

    1. 设置接收端地址比如 http://x.x.x.x:8888/method 并且选择 POST.

     

    1. 添加 headers头,使用 Content-Type 和 application/json 作为 header.

    1. 设置 raw 和 JSON 类型.

    1. 发送JSON串 { "CategoryName": "something" } as is in a text field below.
    2. 点击 "Send"按钮测试.
    • 使用Nancy的Bind方法接收参数,如下:

    public class ReqOnLineParameter//<T> where T : class
        {
            /// <summary>
            /// 接口票据
            /// </summary>
            public string AppKey { get; set; }
            /// <summary>
            /// 登录设备标识
            /// </summary>
            public string AppSecret { get; set; }
            /// <summary>
            /// 接口数据
            /// </summary>
            //public T data { get; set; }
    
            public string crmOrderJson { get; set; }
            public string crmOrderProductJson { get; set; }
            public string keyValue { get; set; }
    
        }
    ReqOnLineParameter req = this.Bind<ReqOnLineParameter>();

    此时req变量中就会接收到POSTMAN传递过来的参数

  • 相关阅读:
    Scala比较器---Ordered与Ordering
    WebSocket、Socket、TCP、HTTP区别
    WebSocket 是什么原理?为什么可以实现持久连接?
    写扩展性好的代码:函数
    Go语言的类型转换和类型断言
    go jwt OAuth2.0
    User Agent 里的各个字段含义
    前后端分离跨域问题解决方案
    beego + websocket 向页面推送数据
    beego orm关联查询之多对多(m2m)
  • 原文地址:https://www.cnblogs.com/gougou1981/p/12721618.html
Copyright © 2020-2023  润新知