zoukankan      html  css  js  c++  java
  • 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传递过来的参数

  • 相关阅读:
    HTML浏览器标题栏如何设置
    阿里团队常用的布局——双飞翼布局
    浏览器兼容性问题——IE不支持却很实用的CSS属性Outline和Child
    css选择器:基本选择器
    编程十年
    解决WX-IOS打开公众号网页出现的底部导航条
    Angular6路由复用与延迟加载的冲突解决——看看有备无患
    Ionic2 + Angular4 + JSSDK开发中的若干问题汇总
    [Linq Expression]练习自己写绑定
    [Linq To Sql]解决join时的Collation冲突
  • 原文地址:https://www.cnblogs.com/gougou1981/p/12721618.html
Copyright © 2011-2022 走看看