请教淘宝API sign签名问题,望高人指点!谢谢!
来源:互联网 发布:2011年nba总决赛 知乎 编辑:程序博客网 时间:2024/05/01 17:47
对淘宝API sign签名老计算不对
代码如下:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Security.Cryptography;namespace WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //正确的sign //http://gw.api.taobao.com/router/rest?sign=70950D9D8BEC7BF55BA572902733F261×tamp=2014-05-28+00%3A04%3A02&v=2.0&app_key=21792839&method=taobao.time.get&partner_id=top-apitools&format=json Dictionary<string, string> param = new Dictionary<string, string>(); param["app_key"] = "21792839"; param["format"] = "json"; param["method"] = "taobao.time.get"; param["partner_id"] = "top-apitools"; param["timestamp"] = "2014-05-28 00:04:02"; param["v"] = "2.0"; string secret = "c22cd49550a5fac8a775893a34a0391c"; string x = getMD5String(param, secret); textBox1.Text = x; } public static String getMD5String(Dictionary<string, string> param, String str) { String gets = getBeforeSign(param, str); Console.WriteLine(gets); MD5 md5 = new MD5CryptoServiceProvider(); byte[] result = md5.ComputeHash((new UTF8Encoding()).GetBytes(gets)); //result = md5.ComputeHash(result); return byteArrayToHexString(result); } private static String byteArrayToHexString(byte[] b) { StringBuilder resultSb = new StringBuilder(); string stmp; for (int i = 0; i < b.Length; i++) { int md = (b[i] & 0XFF); stmp = "" + md.ToString("X"); ; if (stmp.Length == 1) resultSb.Append("0").Append(stmp); else resultSb.Append(stmp); } return resultSb.ToString().ToUpper(); } private static String getBeforeSign(Dictionary<String, String> param, String orgin) { String indexs = orgin; if (param == null) return null; foreach (KeyValuePair<String, String> var in param) { String name = (String)var.Key.ToString(); orgin += name; orgin += param[name]; } orgin = orgin + indexs; return orgin; } }}
运行结果:
848457EDB79276ACDC1B1E636CDC5757
正确结果:
70950D9D8BEC7BF55BA572902733F261
请问是什么问题?
0 0
- 请教淘宝API sign签名问题,望高人指点!谢谢!
- 关于移位的问题?????请高人指点?谢谢!万急!再谢!!
- 望高人指点
- 用zxing编解码二维码的问题,比较初级,请教高人指点...
- VC++6.0 Link问题?求高人指点
- 有个VB问题,请高人指点。
- 我接了陆游器却上不了网,请教高手指点!谢谢!
- 一个关于OPENGL的问题,望高手指点......(谢谢)
- 淘宝API签名异常,如何正确计算SIGN参数?(error code:25 Invalid Signature)
- Java实现HMacMD5加密,用于淘宝客JS 组件 API 调用时生成 sign 的签名
- 小弟初学C#,真心希望能得到高人指点,先谢谢了!
- 这JS怎么错了,怎么不会跳转了,JS菜鸟请求高人指点下,谢谢
- 请教关于图像控件坐标问题,谢谢。
- 计算机网络问题,请教大家,谢谢啦。。。
- 一个指针引起的问题,寻求高人指点
- B2B2C商城,数据库设计,希望高人指点,问题在哪?
- 求高人指点!
- 求高人指点!!!!!!!!!!!!!!!!!!!!!!!
- VC快捷键及调试方法技巧
- web中文件包含路径说明
- java.net.UnknownHostException 异常处理
- SQL2000如何修改sa密码
- 实现ssh无密码登陆
- 请教淘宝API sign签名问题,望高人指点!谢谢!
- Mysql与Oracle的50个区别
- 线性表、链表、哈希表
- 友盟Umeng统计、更新功能使用教程
- “大型票务系统”和“实物电商系统”按系统边界分析各种业务形式
- mongodb基础操作--增删改查
- servlet学习--数据库访问:JDBC
- 内核地址空间分布和进程地址空间
- VS2012调试符号设置(调试时自动加载符号表PDB)