步步为盈
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
2.1 KiB

3 years ago
using BBWY.Common.Http;
using BBWY.Server.Model.Db;
using com.alibaba.openapi.client;
using com.alibaba.openapi.client.policy;
3 years ago
using Jd.ACES;
3 years ago
using Jd.Api;
3 years ago
using Jd.Api.Request;
3 years ago
using Jd.Api.Response;
3 years ago
using Microsoft.Extensions.DependencyInjection;
3 years ago
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
3 years ago
using System.Linq;
3 years ago
using System.Threading;
3 years ago
namespace BBWY.Test
{
internal class Program
{
3 years ago
private static IJdClient GetJdClient(string appKey, string appSecret)
{
return new DefaultJdClient("https://api.jd.com/routerjson", appKey, appSecret);
}
static void Main(string[] args)
{
var appkey = "120EA9EC65AB017567D78CC1139EEEA5";
var appSecret = "866a9877f5f24b03b537483b4defe75d";
var token = "2ace3023200c4ea9aa682bbf8bffee18jztm";
3 years ago
var startDate = DateTime.Parse("2022-08-01");
var endDate = DateTime.Parse("2022-08-31");
var jdClient = GetJdClient(appkey, appSecret);
3 years ago
var pageIndex = 1;
3 years ago
while (true)
{
var req = new DspPlatformFinanceOpenapiQuerycostdetailsRequest();
req.beginDate = startDate.ToString("yyyy-MM-dd");
req.endDate = endDate.ToString("yyyy-MM-dd");
req.pageNo = pageIndex;
req.pageSize = 100;
req.moneyType = 1;
var response = jdClient.Execute(req, token, DateTime.Now.ToLocalTime());
Console.WriteLine($"pageIndex:{pageIndex}\r\n{JsonConvert.SerializeObject(response)}");
Console.WriteLine();
if (response.Json == null)
response.Json = JsonConvert.DeserializeObject<JObject>(response.Body);
var j = (JArray)response.Json["jingdong_dsp_platform_finance_openapi_querycostdetails_responce"]["returnType"]["data"]["page"]["data"];
if (j == null || !j.HasValues || j.Count < 100)
break;
pageIndex++;
Thread.Sleep(2000);
}
Console.ReadKey();
}
}
}