public string Get(int id)
{ JObject o = new JObject(
new JProperty("billNo", "ESL1363593563"),
new JProperty("billType", ""),
new JProperty("pageNo", ""),
new JProperty("pageSize", ""),
new JProperty("queryType ", "")
);
//压缩str,用于得到sign的值
string str = "360buy_param_json" + o.ToString() + "access_token" + + "app_key" + + "method" + + "timestamp=" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "v2.0";
//完整str
string str1 = "360buy_param_json=" + o.ToString() + "&access_token=" + + "&app_key=" + + "&method=" + + "&timestamp=" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "&v=2.0"; string end = "yourappSecret" + str + "yourappSecret";
string md5 = StrToMD5(end);//得出来sign
//最后拼接url:
string endstr = str1 + "&sign=" + md5;
//经常用到url中含有中文字符的需要对其进行字符串编码和解码,所以这里就用了这个System.Web.HttpUtility.UrlEncode,
c#asp.net url 传递中文参数要使用 System.Web.HttpUtility.UrlEncode 而不能使用Server.UrlEncode string allStr = System.Web.HttpUtility.UrlEncode(endstr, System.Text.Encoding.UTF8);
byte[] bufferB = Encoding.UTF8.GetBytes(allStr);
System.Net.ServicePointManager.DefaultConnectionLimit = ;
HttpWebRequest WebReq = (HttpWebRequest)WebRequest.Create("www.cctv.com");
WebReq.Method = "POST";
WebReq.ContentType = "application/x-www-form-urlencoded";
WebReq.ContentLength = allStr.Length;
Stream PostData = WebReq.GetRequestStream();
PostData.Write(bufferB, , bufferB.Length);
PostData.Close(); HttpWebResponse WebResp = (HttpWebResponse)WebReq.GetResponse();
StreamReader sr = new StreamReader(WebResp.GetResponseStream(), System.Text.Encoding.UTF8);
string backstr = sr.ReadToEnd();
backstr = HttpUtility.UrlDecode(backstr);
Console.WriteLine(WebResp.StatusCode);
Console.WriteLine(WebResp.Server);
Stream Answer = WebResp.GetResponseStream();
StreamReader _Answer = new StreamReader(Answer);
Console.WriteLine(_Answer.ReadToEnd());
return _Answer.ReadToEnd(); }

 
         {
return val.TrimStart(c).TrimEnd(c);
} private static string GetSignature(IDictionary<string, string> parameters, string secret)
{
// 先将参数以其参数名的字典序升序进行排序
IDictionary<string, string> sortedParams = new SortedDictionary<string, string>(parameters);
IEnumerator<KeyValuePair<string, string>> iterator = sortedParams.GetEnumerator(); // 遍历排序后的字典,将所有参数按"keyvaluekeyvalue"格式拼接在一起
StringBuilder basestring = new StringBuilder();
while (iterator.MoveNext())
{
string key = iterator.Current.Key;
string value = iterator.Current.Value.ToString();
if (!string.IsNullOrEmpty(key) && value != null)
{
basestring.Append(key).Append(value);
}
} // 使用MD5对待签名串求签
string upperCaseStr = StrToMD5(basestring.ToString());
string result = StrToMD5(upperCaseStr + secret);
return result;
} private static string StrToMD5(string str)
{
byte[] data = Encoding.UTF8.GetBytes(str);
MD5 md5 = new MD5CryptoServiceProvider();
byte[] OutBytes = md5.ComputeHash(data); string OutString = "";
for (int i = ; i < OutBytes.Length; i++)
{
OutString += OutBytes[i].ToString("x2");
}
return OutString.ToUpper();
}

最新文章

  1. BootStrap的一个标准框架的内容解释——来源于bootstrap官网
  2. [函數] Firemonkey 各平台 &quot;简体&quot; / &quot;繁体&quot; 判断
  3. 【BZOJ-1962】模型王子 DP 猜数问题
  4. Atitit.如何避免公司破产倒闭的业务魔咒
  5. canvas绘图动画细节
  6. JavaBean 和 Map 之间互相转换
  7. hdu3966(树链剖分)
  8. qmake 小结(Qt 5.4)
  9. 初学杂文 String类
  10. ELK5.0安装教程
  11. Android SharedPreferences基本用法
  12. ios 在工程中使用字体
  13. 吴恩达机器学习笔记8-多变量线性回归(Linear Regression with Multiple Variables)--多维特征
  14. Python基础-入门之路PYTHON-包 相对导入&amp;绝对导入
  15. .Net Core邮件发送之MailKit
  16. asp.net mvc如何获取url的相关信息
  17. 单节点 Elasticsearch 出现 unassigned shards 原因及解决办法
  18. 烦人的IE7、8,半透明滤镜(filter:alpha)失效、png半透明失效的解决办法
  19. spring面试大全
  20. [py][mx]django模板继承-课程列表页

热门文章

  1. 免费好用的Microsoft iSCSI Software Target 3.3
  2. react jsx 常见问题
  3. C++求解数组中出现超1/4的三个数字。
  4. Cordova 开发 App
  5. leetcode 690. Employee Importance——本质上就是tree的DFS和BFS
  6. poj1286 Necklace of Beads—— Polya定理
  7. LD_LIBRARY_PATH设置问题
  8. 【154】C#打包程序成安装包
  9. PCB Genesis拼SET画工艺边 实现方法(一)
  10. PCB SI9000阻抗计算引擎Web方式实现方法