SmartWeatherAPI_Lite_WebAPI C# 获取key加密

 中国气象局面向网络媒体、手机厂商、第三方气象服务机构等用户,通过 web 方式提供数据气象服务的官方载体。

 在一周前已经申请到appid,但是苦于没有C#版的key 的算法,一直验证不通过,经过几天查询资料,现在提供一份C#版的HMAC-SHA1的加密算法

 比较简单,分项给大家,大家可以参考一下。

SmartWeatherAPI_Lite_WebAPI C# 获取key加密
 string GetKey(string appid, string privateKey, string areaId, string date, string type)
        {
            //使用SHA1的HMAC

            HMAC hmac = HMACSHA1.Create();
            var publicKey = "http://webapi.weather.com.cn/data/?areaid={0}&type={1}&date={2}&appid={3}";
            var data = System.Text.Encoding.UTF8.GetBytes(string.Format(publicKey, areaId, type, date, appid));
            //密钥
            var key = System.Text.Encoding.UTF8.GetBytes(privateKey);
            hmac.Key = key;

            //对数据进行签名
            var signedData = hmac.ComputeHash(data);
            return Convert.ToBase64String(signedData);

        }
SmartWeatherAPI_Lite_WebAPI C# 获取key加密


 

SmartWeatherAPI_Lite_WebAPI C# 获取key加密

上一篇:[转载]c# winform 获取当前程序运行根目录


下一篇:重新点亮linux 命令树————查看进程[二十一]