特殊的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": ...
随机推荐
- public static void main(String[] args){}函数理解
主函数的一般写法如下: public static void main(String[] args){…} 下面分别解释这些关键字的作用: (1)public关键字,这个好理解,声明主函数为publi ...
- SQL 函数集锦
..STUFF()用另一子串替换字符串指定位置.长度的子串.STUFF (<character_expression1>, <start_ position>, <len ...
- 标准库中的-stack
#include <sequence_concepts.h> __STL_BEGIN_NAMESPACE // Forward declarations of operators == a ...
- Socket编程基础——面向连接TCP
WinSock是Windows环境下的网络编程接口,它最初是基于Unix环境下的BSD Socket,是一个与网络协议无关的编程接口.WinSock包含两个主要版本,即WinSock1和WinSock ...
- [20150513]Linux远程登陆管理以及Vim的学习
Linux远程登陆管理以及Vim的学习 实现Linux远程管理 所需工具Xshell,Xshell是一个用于MS Windows平台的强大的SSH,TELNET,和RLOGIN终端仿真软件.它使得用户 ...
- Error:Execution failed for task ':app:transformClassesWithInstantRunForDebug'. > java.lang.ClassNotFoundException: io.realm.RealmObject
这问题错误是在运行时出现的,A-Jiang大神有说明解决方法,大神网址:https://github.com/AndroidJiang/StockChart 如果是as2.0+,可能会出现instan ...
- sql 查询效率
1. SQL优化的原则是:将一次操作需要读取的BLOCK数减到最低,即在最短的时间达到最大的数据吞吐量.调整不良SQL通常可以从以下几点切入: 检查不良的SQL,考虑其写法是否还有可优化内容 检查子查 ...
- iOS的URL处理
前两天处理iOSapp过程中(我是用swift语言写的,资料较少),被一个“字符串”搞了一晚上的时间到第二天才处理好,在此记下,望见过此文的学生有一天遇到该情况能三分钟搞定不浪费时间: 先看如下代码 ...
- IDEA 中 显示 *.properties 为中文
效果:
- spring boot Swagger 集成
1. pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://ww ...