淘宝客根据优惠券url更新优惠券信息
1 2 3 4 5 6 7 | string m_h5_tk = "6ad772f2d0833a8e302c5ae68d65eaa0" ; string time = ToUnixTimestampBySeconds().ToString(); string appKey = "12574478" ; string data = JsonConvert.SerializeObject( new { e = "w4TDo/jOMecNfLV8niU3RxrSI/Oabn6qNg4Gqf8CT4AKuDLwELihnRbQhr+5FtsAh9KaCsCm+R32yVMpbbWtUWwCdh1fz0zYK5wEWaT+OkzWZTH/haUuJ+3FJUPORYvyhPbd0JgRLDq3GXpSbfs48lGikzdUqsEO7RwD1Eg9p5/o27RMW2YwFNweCPWKo1fUyUxONJCwrinluAYBRglsbQ==" }); string sign = GetSign( string .Join( '&' , new string [] { m_h5_tk, time, appKey, data })); data = HttpUtility.UrlEncode(data); string apiUrl = $ "https://acs.m.taobao.com/h5/mtop.alimama.union.hsf.coupon.get/1.0/?jsv=2.4.0&appKey=12574478&t={time}&sign={sign}&api=mtop.alimama.union.hsf.coupon.get&v=1.0&AntiCreep=true&AntiFlood=true&data={data}" ; |
m_h5_tk为访问mtop.alimama.union.hsf.coupon.get接口链接时,返回的cookies数据,注,返回cookies数据格式为:_m_h5_tk= 1c08cb77a7795d64c543cd1728e0135c_1529065507043,这里只使用前半部分,在这里是1c08cb77a7795d64c543cd1728e0135c;
time为毫秒级时间戳;
appKey为固定的值12574478;
data为json字符串,e为优惠券url中的参数e的值;
sign签名
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /// <summary> /// 时间转时间戳Unix-时间戳精确到秒 /// </summary> private static long ToUnixTimestampBySeconds() { DateTimeOffset dto = new DateTimeOffset(DateTime.Now); return dto.ToUnixTimeMilliseconds(); } private static string GetSign( string strParameter) { using ( var md5 = MD5.Create()) { var result = md5.ComputeHash(Encoding.UTF8.GetBytes(strParameter)); var strResult = BitConverter.ToString(result); var sign = strResult.Replace( "-" , "" ).ToLower(); return sign; } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现