|
@ -6,6 +6,9 @@ using Newtonsoft.Json.Linq; |
|
|
using System; |
|
|
using System; |
|
|
using System.Collections.Generic; |
|
|
using System.Collections.Generic; |
|
|
using System.Linq; |
|
|
using System.Linq; |
|
|
|
|
|
using System.Net.Http; |
|
|
|
|
|
using System.Security.Cryptography; |
|
|
|
|
|
using System.Text; |
|
|
|
|
|
|
|
|
namespace BBWY.Test |
|
|
namespace BBWY.Test |
|
|
{ |
|
|
{ |
|
@ -16,8 +19,17 @@ namespace BBWY.Test |
|
|
return new DefaultJdClient("https://api.jd.com/routerjson", appKey, appSecret); |
|
|
return new DefaultJdClient("https://api.jd.com/routerjson", appKey, appSecret); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static string Md5Encrypt(string originStr) |
|
|
|
|
|
{ |
|
|
|
|
|
using (var md5 = MD5.Create()) |
|
|
|
|
|
{ |
|
|
|
|
|
return string.Join(string.Empty, md5.ComputeHash(Encoding.UTF8.GetBytes(originStr)).Select(x => x.ToString("x2"))); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
static void Main(string[] args) |
|
|
static void Main(string[] args) |
|
|
{ |
|
|
{ |
|
|
|
|
|
|
|
|
//var appkey = "E1AA9247D5583A6D87449CE6AB290185";
|
|
|
//var appkey = "E1AA9247D5583A6D87449CE6AB290185";
|
|
|
//var appSecret = "e479558ddd9e40f8929cfc00c6cbbc9c";
|
|
|
//var appSecret = "e479558ddd9e40f8929cfc00c6cbbc9c";
|
|
|
|
|
|
|
|
@ -35,9 +47,41 @@ namespace BBWY.Test |
|
|
|
|
|
|
|
|
var qtAppId = "BBWY2023022001"; |
|
|
var qtAppId = "BBWY2023022001"; |
|
|
var qtAppSecret = "908e131365d5448ca651ba20ed7ddefe"; |
|
|
var qtAppSecret = "908e131365d5448ca651ba20ed7ddefe"; |
|
|
var spu = 208; |
|
|
var url = "https://qt.qiyue666.com/api/platform/product/spu/208"; |
|
|
var callTime = DateTime.Now.ToString("yyyyMMddHHmmss"); |
|
|
var callTime = DateTime.Now.ToString("yyyyMMddHHmmss"); |
|
|
var _params = JsonConvert.SerializeObject(new object[] { }); |
|
|
var randomNum = new Random().Next(100000, 999999).ToString(); |
|
|
|
|
|
var p = new object[] { }; |
|
|
|
|
|
|
|
|
|
|
|
var jmStr = JsonConvert.SerializeObject(new QuanTanSignParam() |
|
|
|
|
|
{ |
|
|
|
|
|
appId = qtAppId, |
|
|
|
|
|
appSecret = qtAppSecret, |
|
|
|
|
|
callTime = callTime, |
|
|
|
|
|
_params = JsonConvert.SerializeObject(p), |
|
|
|
|
|
randomNum = randomNum |
|
|
|
|
|
}); |
|
|
|
|
|
var md5Str = Md5Encrypt(jmStr); |
|
|
|
|
|
var qtToken = $"{qtAppId}-{callTime}-{md5Str}-{randomNum}"; |
|
|
|
|
|
|
|
|
|
|
|
var qtRequestParam = new QuanTanRequestParam() |
|
|
|
|
|
{ |
|
|
|
|
|
Params = p, |
|
|
|
|
|
token = qtToken |
|
|
|
|
|
}; |
|
|
|
|
|
using (var httpClient = new HttpClient()) |
|
|
|
|
|
{ |
|
|
|
|
|
using (var request = new HttpRequestMessage(HttpMethod.Post, url)) |
|
|
|
|
|
{ |
|
|
|
|
|
request.Content = new StringContent(JsonConvert.SerializeObject(qtRequestParam), Encoding.UTF8, "application/json"); |
|
|
|
|
|
|
|
|
|
|
|
using (var response = httpClient.SendAsync(request).Result) |
|
|
|
|
|
{ |
|
|
|
|
|
var result = response.Content.ReadAsStringAsync().Result; |
|
|
|
|
|
Console.WriteLine(result); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
Console.ReadKey(); |
|
|
Console.ReadKey(); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|