示例#1
0
        static void TestArgType()
        {
            FeignTestArgType feign = ProxyLoader.GetProxy <FeignTestArgType>();
            Type             type  = typeof(FeignDtoDemo);

            object dto1 = feign.GetDtoObj(type);

            WriteMsg($"返回类型:{dto1.GetType()}");
            WriteMsg(JsonConvert.SerializeObject(dto1));

            object dto2 = feign.GetDtoObj("123", type);

            WriteMsg($"返回类型:{dto2.GetType()}");
            WriteMsg(JsonConvert.SerializeObject(dto2));

            object dto3 = feign.GetDtoObj(null);

            WriteMsg($"返回类型:{dto3.GetType()}");
            WriteMsg(JsonConvert.SerializeObject(dto3));

            try
            {
                feign.GetErr(typeof(object));
            }
            catch (Exception exp)
            {
                WriteMsg(exp);
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            //  Initialize all of the possible proxies
            ProxyLoader.InitializeProxies();

            //  These keywords should be given to me. Each keyword has a different proxy
            //  Before running a keyword, you should check if proxy is working (anything other than 200 means that we should try another one)

            //  get these keywords from the database
            string[] keywords = { "Russia" };

            //  get them from the database as well
            string[] categories = { "store/apps/collection/topselling_free", "store/apps/collection/topselling_paid", "store/apps/collection/topselling_new_free" };

            //string[] fieldNames = {
            //    "Url", "ScrapedDate", "Name", "Developer", "IsTopDeveloper", "DeveloperURL", "PublicationDate",
            //    "Category", "IsFree", "Price", "CoverImageUrl", "Description", "ReviewScore", "ReviewTotal",
            //    "FiveStarsReviews", "FourStarsReviews", "ThreeStarsReviews", "TwoStarsReviews",
            //    "OneStarReviewCount", "AppSize", "Installs", "CurrentVersion", "MinimumOSVersion", "ContentRating",
            //    "HaveInAppPurchases", "InAppPriceRange", "DeveloperEmail", "DeveloperWebsite", "DeveloperPrivacyPolicy"
            //};

            //string outputFilePath = @"./result";

            PlayStoreScraper.CrawlByCategories(categories, 1000);
            //  This one is working
            //PlayStoreScraper.CrawlByKeywords(keywords, 1000);

            Console.ReadLine();
        }
示例#3
0
        public void Alert(Notes note)
        {
            if (string.IsNullOrEmpty(note.DingDingToken))
            {
                return;
            }

            var sb = new StringBuilder();

            sb.Append(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"))
            .Append(" ")
            .Append(MainForm.APPNAME)
            .Append(":\n")
            .Append(note.Title)
            .Append("\n")
            .Append(note.Content)
            .Append("\n客户端:")
            .Append(IpHelper.GetServerIpList());

            DingDingDto.Text text = new DingDingDto.Text();
            text.content = sb.ToString();
            DingDingDto.At at = new DingDingDto.At();
            //at.atMobiles.Add("手机号"); 在钉钉群里的人的手机号

            DingDingDto dto = new DingDingDto();

            dto.text = text;
            dto.at   = at;
            var ret = ProxyLoader.GetProxy <DingDingFeign>().send(note.DingDingToken, dto);

            logger.Info("钉钉返回结果:" + ret);
        }
示例#4
0
        // 配置占位符读取
        static void TestPlace()
        {
            FeignTestPlace feign = ProxyLoader.GetProxy <FeignTestPlace>();

            try
            {
                // 如下代码发起的HTTP请求,最终的url是: https://47.107.125.247/prod/cc/test/api.aspx?n1=12&n2=45&securekey=123456
                FeignDtoDemo dto1 = feign.GetDtoObj(12, 45);
                WriteMsg(JsonConvert.SerializeObject(dto1));
            }
            catch { }
        }
        static void Main(string[] args)
        {
            GameObject   gameObject = new GameObject();
            IModelLoader loader     = new ProxyLoader(new RealLoader());

            loader.LoadToGameObject(gameObject, "Proxy Design Pattern Rocks!");
            Console.WriteLine(gameObject.Model.Name);

            Thread.Sleep(1000);
            Console.WriteLine(gameObject.Model.Name);

            Console.ReadLine();
        }
示例#6
0
        // 测试 使用自定义配置类
        static void TestConfig()
        {
            FeignTestConfig feign = ProxyLoader.GetProxy <FeignTestConfig>();
            // 可以看到调用前后会输出日志,和请求耗时
            FeignDtoDemo dto = feign.GetDtoObj();

            WriteMsg(JsonConvert.SerializeObject(dto));

            try
            {
                feign.GetErr();// 可以看到调用后会输出错误信息
            }
            catch { }
        }
示例#7
0
        // 添加Header测试
        static void TestHeader()
        {
            FeignTestHeader feign = ProxyLoader.GetProxy <FeignTestHeader>();

            // http调用前,会添加header:"User-Agent":"beinet feign1234", "headerName":"headerValue"
            FeignDtoDemo dto1 = feign.GetDtoObj();

            WriteMsg(JsonConvert.SerializeObject(dto1));

            // http调用前,会添加header:"headerName":"header1","RealHeaderName":"header2"
            FeignDtoDemo dto2 = feign.GetDtoObj("header1", "header2");

            WriteMsg(JsonConvert.SerializeObject(dto2));
        }
示例#8
0
        // 参数中存在URI类型,且不为空时,会忽略FeignClient的Url配置
        static void TestURI()
        {
            FeignTestURI feign = ProxyLoader.GetProxy <FeignTestURI>();
            Uri          uri   = new Uri("https://47.107.125.247/");

            // 请求为 GET https://47.107.125.247/test/api.aspx
            FeignDtoDemo dto1 = feign.GetDtoObj(uri);

            WriteMsg(JsonConvert.SerializeObject(dto1));

            // 请求为 POST https://47.107.125.247/test/api.aspx Stream为abc
            FeignDtoDemo dto2 = feign.GetDtoObj("abc", uri);

            WriteMsg(JsonConvert.SerializeObject(dto2));

            // uri参数传空,使用类定义的url,即 GET https://47.107.125.247/test/api.aspx
            FeignDtoDemo dto3 = feign.GetDtoObj(null);

            WriteMsg(JsonConvert.SerializeObject(dto3));
        }
示例#9
0
        // 常规调用
        static void TestQuick()
        {
            FeignTestQuick feign = ProxyLoader.GetProxy <FeignTestQuick>();

            feign.Get();

            int ret1 = feign.GetMs();

            WriteMsg(ret1);

            int ret2 = feign.GetAdd(12, 34);

            WriteMsg(ret2);

            int ret3 = feign.PostAdd(56, 78);

            WriteMsg(ret3);

            string json = feign.GetDtoStr();

            WriteMsg(json);

            FeignDtoDemo dto1 = feign.GetDtoObj();

            WriteMsg(JsonConvert.SerializeObject(dto1));

            FeignDtoDemo dto2 = feign.PostDtoObj(11, "fankuai");

            WriteMsg(JsonConvert.SerializeObject(dto2));

            FeignDtoDemo dto3 = feign.PostDtoObj(dto2, "xxx");

            WriteMsg(JsonConvert.SerializeObject(dto3));

            object obj = feign.GetObj();

            WriteMsg($"返回类型:{dto3.GetType()}");
            WriteMsg(JsonConvert.SerializeObject(obj));
        }