特殊的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": ...
随机推荐
- TCP三次握手及四次挥手详细图解
TCP三次握手及四次挥手详细图解 Andrew Huangbluedrum@163.com 相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不 ...
- WebDriver定位元素方法
如果把页面上的元素看作人的话,在现实世界如何找到某人呢?方法有三: 一.通过人本身的属性,例如他的姓名,手机号,身份证号,性别,这些可区别他人的属性.在web页面上的元素也有这些属性,例如,id.na ...
- ;function($,undefined) 前面的分号是什么用处
;function($,undefined) 前面的分号是什么用处 ;(function($){$.extend($.fn...现般在一些 JQuery 函数前面有分号,在前面加分号可以有多种用途:1 ...
- Linux系统下fd分配的方法
最近几天在公司里写网络通讯的代码比较多,自然就会涉及到IO事件监测方法的问题.我惊奇的发现select轮训的方法在那里居然还大行其道.我告诉他们现在无论在Linux系统下,还是windows系统下,s ...
- Shell 环境变量 & 参数变量
环境变量 $HOME 当前用户的家目录 $PATH 以冒号分隔的用来搜索命令的目录列表 $PS1 命令提示符,通常是$字符,但在bash中,可以使用一些更复杂的值.例如,字符串[\u@\h \w]$就 ...
- POJ-3261 Milk Patterns(后缀数组)
题目大意:找出至少出现K次的子串的最长长度. 题目分析:二分枚举长度x,判断有没有最长公共前缀不小于x的并且连续出现了至少k次的有序子串区间. 代码如下: # include<iostream& ...
- iframe的高度自适应
http://www.cnblogs.com/snandy/p/3902337.html http://www.cnblogs.com/snandy/p/3900016.html Snandy Sto ...
- Downloader调用WCF服务返回文件
Generator using System; using System.Collections.Generic; using System.IO; namespace Downloader { pu ...
- Install Qt creator
download qt for linux yum install dialog move download qt file(qt-opensource-linux-x64-5.6.0.run) fr ...
- python学习-day14:集合,函数,格式化
一.集合 定义:由不同元素组成的集合.集合是一组无序排列的可hash值, 可以作为字典的key.元素必须是不可变类型:只能存放数字,字符串,字典 特性:集合的目的是将不同的值放在一起,不同的集合之间可 ...