特殊的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": ...
随机推荐
- Xcode 设置 ARC&MRC混用
如果你的项目使用的非 ARC 模式,则为 ARC 模式的代码文件加入 -fobjc-arc 标签.如果你的项目使用的是 ARC 模式,则为非 ARC 模式的代码文件加入 -fno-objc-arc 标 ...
- sql语句与 数据库
create table wyx( xh int primary key, xm varchar(20) not null, nl int, zcrq timestamp default curr ...
- [转]Vs解决方案的目录结构设置和管理
原文地址:[转]Vs解决方案的目录结构设置和管理 作者:大明 以下内容为“原创”+“转载” 首先,解决方案和项目文件夹包含关系(c++项目): VS解决方案和各个项目文件夹以及解决方案和各个项目对 ...
- 一步步构建自己的AngularJS(1)——项目初始化
Angular1距离2009年发布已经好多年了,Angular2也已经出了Beta版,估计今年就能正式发布.大多数人对于Angular1.X的认识仅限于能够在项目中使用,对于其中的深层原理知道的并不多 ...
- Lucene/Solr搜索引擎开发笔记 - 第2章 Solr安装与部署(Tomcat篇)
一.安装环境 图1-1 Tomcat和Solr的版本 我本机目前使用的Java版本为JDK 1.8,因为Solr 4.9要求Java版本为1.7+,请注意. 二.Solr部署到Tomcat流程 图1- ...
- Eclipse下新建Maven项目、自动打依赖jar包
当我们无法从本地仓库找到需要的构件的时候,就会从远程仓库下载构件至本地仓库.一般地,对于每个人来说,书房只有一个,但外面的书店有很多,类似第,对于Maven来说,每个用户只有一个本地仓库,但可以配置访 ...
- access remote libvirtd
访问远程libvirtd服务因为是在一个可信环境中运行,所以可以忽略安全方面的操作,步骤如下:(1)更改libvirtd配置 1.1 更改/ect/sysconfig/libvirtd文件,打开 ...
- Linux中cp和scp命令的使用方法
Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同. cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的 ...
- winXP下安装opensshd服务
1)参考如下帖子:http://blog.chinaunix.net/uid-23187544-id-2527564.html http://wuhuizhong.iteye.com/blog/122 ...
- git 分批后的数据
如果涉及到大文件的 git 传输, 我们可能会收到下面错误: sourceTree 的错误. 命令行的错误: $ git clone https://********/gopher.git C ...