• 淘宝Refrash_token签名错误的解决办法


    最近在做淘宝相关应用,想要通过Refrash_token来延长SessionKey的授权时间,但是总是报406 sign error.

     

    经过多次尝试和多方询问,方才知道原来淘宝给的.net SDK里面的签名方法(SignTopRequest)是不能用于Refrash_token的签名。

    只好老老实实的按照官方例子,把JAVA的翻译成C#的。

     1 private string GetRefrashSign(string appkey, string sessionKey, string refrashToken, string secret)
     2         {
     3             Dictionary<string, string> signParams = new Dictionary<string, string>();
     4             signParams.Add("appkey", appkey);
     5             signParams.Add("refresh_token", refrashToken);
     6             signParams.Add("sessionkey", sessionKey);
     7             //return TopUtils.SignTopRequest(signParams, secret,true).ToUpper();
     8             StringBuilder paramsString = new StringBuilder();
     9             foreach (KeyValuePair<string, string> param in signParams)
    10             {
    11                 paramsString.Append(param.Key);
    12                 paramsString.Append(param.Value);
    13             }
    14             paramsString.Append(secret);
    15             return GetMd5String(paramsString.ToString()).ToUpper();
    16         }
    17         private string GetMd5String(string paramsString)
    18         {
    19             MD5 md5 = MD5.Create();
    20             byte[] bytes = md5.ComputeHash(Encoding.UTF8.GetBytes(paramsString));
    21             StringBuilder sb = new StringBuilder();
    22             foreach (byte b in bytes)
    23                 sb.AppendFormat("{0:X2}", b);
    24             return sb.ToString();
    25         }
    View Code
  • 相关阅读:
    bzoj2599
    在Linux下配置jdk的环境变量
    liunx 命令大全
    Liunx下如何使用kettle
    Liunx 解压篇
    Linux下安装MySQL-5.7
    Linux文件权限查看及修改命令chmod,chown
    spring 驱动模式
    Struts2标签之Checkbox
    spring 注解的优点缺点
  • 原文地址:https://www.cnblogs.com/tianlong/p/3745666.html
Copyright © 2020-2023  润新知