特殊的Josn格式
static void Main(string[] args)
{
YtRequest<RequestHead, RequestBody> Ytrequest = new YtRequest<RequestHead, RequestBody>
{
head = new RequestHead
{
version="1.0",
product="B10002",
merchant="201511043830",
outOrderId = "110000000000005",
memo="备注信息",
},
body = new RequestBody
{
name_card="",
id_card="",
},
};
JavaScriptSerializer serializer = new JavaScriptSerializer();
var prestr = serializer.Serialize(Ytrequest);
string mysign = Sign(prestr, "N75tkwmnHV1UjZ60YAGK", "utf-8");
YtSendModel<RequestHead, RequestBody> Ytsend = new YtSendModel<RequestHead, RequestBody>
{
request = new YtRequest<RequestHead, RequestBody>
{
head = new RequestHead
{
version = "1.0",
product = "B10002",
merchant = "201511043830",
outOrderId = "123456",
memo = "连连实名认证",
},
body = new RequestBody
{
name_card = "min",
id_card = "141002465",
},
},
sign="12321435636",
};
string strRequestData = serializer.Serialize(Ytsend);
Encoding enconding = Encoding.GetEncoding("utf-8");
byte[] bytedata = enconding.GetBytes(strRequestData);
HttpWebRequest re = (HttpWebRequest)HttpWebRequest.Create("https://api.udcredit.com/api/credit/v1/get_nauth");
re.Method = "post";
re.ContentType = "application/json";
re.ContentLength = bytedata.Length;
Stream requestStream = re.GetRequestStream();
requestStream.Write(bytedata, 0, bytedata.Length);
requestStream.Close();
HttpWebResponse httpResponse = (HttpWebResponse)re.GetResponse();
Stream myStream = httpResponse.GetResponseStream();
StreamReader reader = new StreamReader(myStream, enconding);
StringBuilder responseData = new StringBuilder();
String line;
while ((line = reader.ReadLine()) != null)
{
responseData.Append(line);
}
//释放
myStream.Close();
string strResult = responseData.ToString();
}
static string Sign(string str,string key,string charset)
{
str=str+key;
var sb=new StringBuilder(32);
MD5 md5=new MD5CryptoServiceProvider();
var arr=md5.ComputeHash(Encoding.GetEncoding(charset).GetBytes(str));
foreach (var item in arr)
{
sb.Append(item.ToString("x").PadLeft(2, '0'));
}
return sb.ToString();
}
建一个YtSendModel.cs
public class YtSendModel<Head ,Body>
{
public YtRequest<Head, Body> request { get; set; }
public string sign { get; set; }
}
public class YtRequest<Head, Body>
{
public Head head { get; set; }
public Body body { get; set; }
}
public class RequestHead
{
public string version { get; set; }
public string product { get; set; }
public string merchant { get; set; }
public string outOrderId { get; set; }
public string memo { get; set; }
}
public class RequestBody
{
public string name_card { get; set; }
public string id_card { get; set; }
}
特殊的Josn格式的更多相关文章
- Velocity(6)——velocity遍历josn格式的字符串
使用velocity脚本语言遍历josn格式的字符串 1.由于数据库会存储一些json格式的字符,为方便以后使用筛选 如果这些数据我们查出来直接遍历使用velocity是根本行不通的,例如这样的话:j ...
- ES5-ES6-ES7_字符串与JOSN格式的数据相互转换以及深度克隆新对象
这篇文章主要来讲HTML5中的新方法:parse()把字符串转换成josn格式的数据和stringify()把josn格式的数据转换成字符串 eval()方法的回顾 eval()方法可以将任何字符串解 ...
- JsonConvert.SerializeObject() 输出josn格式 也就是序列化。
JsonConvert.SerializeObject() 输出josn格式 也就是序列化. JSON.parse 反序列化 http://www.cnblogs.com/ahlx/p/52280 ...
- josn 格式 解析
格式为:{"lng":113.534634,"lat":22.274308} 解析步骤如下: <?php $a=json_decode($goods_in ...
- 如何将多个数据的- 转为:来匹配josn格式
var str = `北京 2 河北 3 河北-邯郸 301 河北-保定 302 河北-邢台 303 山东 4 山东-青岛 401 山东-烟台 402`; var arrStr = str.split ...
- 关于Web项目里的给表单验证控件添加结束时间不得小于开始时间的验证方法,日期转换和前台显示格式之间,还有JSON取日期数据格式转换成标准日期格式的问题
项目里有些不同页面间的日期显示格式是不同的, 第一个问题: 比如我用日期控件WdatePicker.js导包后只需在input标签里加上onClick="WdatePicker()" ...
- jq 解析josn字符串
1. var obj = jQuery.parseJSON("${ruleModel.rules}"); 2. var obj = eval("("+" ...
- JS实现Ajax,Josn数据的序列化和反序列化---例: 省市区联动(包含get,post)
服务器端相应JOSN数据 用到序列化和反序列化----命名空间using System.Web.Script.Serialization; public void ProcessRequest(H ...
- 修改WCF的默认序列化格式
需求: 要用WCF生成 Restful风格的接口,返回 JOSN格式: { "AInfo": { ", "Description": ...
随机推荐
- NIC bonding
Bonding is the same as port trunking. In the following I will use the word bonding because practical ...
- iOSapp的json告示
看到这篇文章,要知道这篇文章告诉你什么,就是对json的解析的一个解释,解析的代码去百度就可以了,OC的.安卓的.JS的等等都很多,但是对于swift语言的小白来说,资料就少之又少,包括一些看不懂的, ...
- 【IOI2000】邮局设置问题
现在连基础DP都要看题解和代码才能写出来了,怎么办嘛QAQ 原题: 一些村庄建在一条笔直的高速公路边上,我们用一条坐标轴来描述这条公路,每个村庄的坐标都是整数,没有两个村庄的坐标相同.两个村庄的距离定 ...
- 【NOIP2005】过河
感觉这题好玄--最后看了chty的代码才过,我现在这样必须看题解才能A题怎么办嘛qaq 原题: 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上 ...
- 渴切API参考手册
渴切:是国内优秀的开源css框架. 渴切是一个开源中文 (X)HTML/CSS 框架 ,它的目的是减少你的css开发时间.它提供一个可靠的css基础去创建你的项目,能够用于网站的快速设计,通过重设和重 ...
- 2017.1.8a版给信息源新增:max_len、max_db字段
2017.1.8a版程序给信息源增加max_len.max_db字段,分别用于控制:获取条数.数据库保留条数. max_len的说明见此图: max_db的说明见此图: 当max_len和max_db ...
- Java--RuntimeException(运行时异常)
[转载自]:http://blog.csdn.net/qq7342272/article/details/7940741 java运行时异常是可能在java虚拟机正常工作时抛出的异常. java提供了 ...
- python笔记集合
1.win_64下编译pyd(编译器用的tdm-gcc-5.1) gcc test.c -shared -Ic:\Python27\include -Lc:\Python27\libs -lpytho ...
- 解决Selenium Webdriver执行测试时,每个测试方法都打开一个浏览器窗口的问题
虽然把WebDriver定义为一个静态变量了,但是每次执行测试都要打开多个窗口,挺浪费时间的. 找了很多中方法,比如使用setUpClass, BeforeSuite都没有完全解决问题.后来无意间发现 ...
- How to Allow MySQL Client to Connect to Remote MySql
How to Allow MySQL Client to Connect to Remote MySQ By default, MySQL does not allow remote clients ...