123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- using Newtonsoft.Json;
- using Newtonsoft.Json.Linq;
- using PDF_Master.Properties;
- using System;
- using System.Collections.Generic;
- using System.Drawing;
- using System.Drawing.Imaging;
- using System.IO;
- using System.Linq;
- using System.Management;
- using System.Net;
- using System.Runtime.InteropServices;
- using System.Security.Cryptography;
- using System.Text;
- using System.Threading.Tasks;
- namespace PDF_Master.Helper
- {
- //本辅助类不使用viewmodel,因为同时在PDFreaderPro上使用
- public static class ADServiceHelper
- {
- public static bool IsUpdate=false;
- public static string RequestHost = "http://test-store.kdan.cn:3019";
- public static string AdUrl = "/api/advertise-new";
- public static string ImageUrl;
- public static String GetAD(string appname)
- {
- HttpWebResponse response = null;
- ServicePointManager.DefaultConnectionLimit = 200;
- string post = $"?app_name={appname}";
- HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(RequestHost + AdUrl+post);
- request.Method = "Get";
-
- request.ContentType = "text/html;charset=UTF-8";
- //request.Accept = "application/vnd.api+json;version=1";
- request.Timeout = 20000;
- request.ServicePoint.Expect100Continue = false;
- try
- {
- response = (HttpWebResponse)request.GetResponse();
- using (StreamReader reader = new StreamReader(response.GetResponseStream()))
- {
- string responseData = reader.ReadToEnd();
- Console.WriteLine(responseData);
- reader.Close();
- JObject jobject = (JObject)JsonConvert.DeserializeObject(responseData);
- if (response != null)
- {
- response.Close();
- }
- if (request != null)
- {
- request.Abort();
- }
- Console.WriteLine(responseData);
-
- if (jobject["code"].ToObject<string>().ToLower() == "200")
- {
- //Console.WriteLine(jobject["list"].ToObject<string>());
- JArray jarr = JArray.Parse(jobject["list"].ToString());
- foreach (var j in jarr)
- {
-
- Console.WriteLine(j["detail"].ToString());
- JObject jobject2 = (JObject)JsonConvert.DeserializeObject(j["detail"].ToString());
- Settings.Default.ADDate.ADhiddenSidebar = jobject2["productsidebar"]["hidden"].ToObject<string>();
- Settings.Default.ADDate.ADStartTime = jobject2["startTime"].ToObject<long>();
- Settings.Default.ADDate.ADEndTime = jobject2["endTime"].ToObject<long>();
- if (Settings.Default.ADDate.ADVersion != jobject2["version"].ToObject<string>())
- {
- //清除ADTemp文件夹及该目录中的所有子内容
- string ADPath = Path.Combine(App.CurrentPath, "ADTemp");
- DirectoryInfo Scantempfolder = new DirectoryInfo(ADPath);
- if (Scantempfolder.Exists)
- {
- Directory.Delete(ADPath, true);
- }
- IsUpdate = true;
- Settings.Default.ADDate.ADSidebar = jobject2["productsidebar"]["imageURL"]["en"].ToObject<string>();
- Settings.Default.ADDate.ADLinkSidebar = jobject2["productsidebar"]["linkURL"]["en"].ToObject<string>();
-
- Settings.Default.ADDate.ADVersion = jobject2["version"].ToObject<string>();
- Settings.Default.Save();
- }
-
-
- }
- if(IsUpdate==true)
- {
- string path = App.CachePath.ADFilePath;
- string FileName = path + "\\" + 1 + ".png";
-
- WebClient client = new WebClient();
- client.DownloadFile(Settings.Default.ADDate.ADSidebar, FileName);
- }
-
- }
- string str1 = System.Environment.CurrentDirectory;
- return jobject["code"].ToObject<string>().ToLower();
- }
-
- }
- catch (System.Net.WebException e)
- {
- Console.WriteLine(e.Message);
- if (e.Message == "未能解析此远程名称: 'test-store.kdan.cn'")
- {
- return "404";
- }
- else return "0000";
- }
- }
- public static void Down(string url, string dtnow)
- {
- WebRequest wreq = WebRequest.Create(url);
- HttpWebResponse wresp = (HttpWebResponse)wreq.GetResponse();
- Stream s = wresp.GetResponseStream();
- System.Drawing.Image img;
- img = System.Drawing.Image.FromStream(s);
- img.Save("E:\\" + dtnow, ImageFormat.Jpeg);
- MemoryStream ms = new MemoryStream();
- img.Save(ms, ImageFormat.Jpeg);
- img.Dispose();
- }
- }
- }
|