-
發送端設置
//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進行測試,進行如下設置:
- 設置接收端地址比如
http://x.x.x.x:8888/method
並且選擇POST
.
- 添加 headers頭,使用
Content-Type
和application/json
作為 header.
- 設置
raw
和JSON
類型.
- 發送JSON串
{ "CategoryName": "something" }
as is in a text field below. - 點擊 "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傳遞過來的參數