示例#1
0
        /// <summary>
        /// リクエスト前に処理する
        /// </summary>
        /// <param name="oSession">セッション情報</param>
        public static void BeforeRequest(Fiddler.Session oSession)
        {
            // ★キャストエラーのチェックテスト
            //object obj = (Int32)32;
            //float f = (float)obj;

            // モンラインのみを対象にする
            if (!oSession.hostname.StartsWith("monmusugame"))
            {
                oSession.Ignore();
                return;
            }
        }
示例#2
0
 private void FiddlerApplication_BeforeRequest(Fiddler.Session oSession)
 {
     if (int.Parse(upstreamport) != 0)
     {
         oSession["X-OverrideGateway"] = "127.0.0.1:" + upstreamport;
     }
     if (!oSession.PathAndQuery.StartsWith("/kcsapi/api_")) // 艦これのAPI以外は無視する
     {
         oSession.Ignore();
         return;
     }
     // 戦闘開始のタイミングのずれを防ぐためにバッファする
     if (oSession.PathAndQuery.EndsWith("api_req_sortie/battle") || oSession.PathAndQuery.EndsWith("api_req_practice/battle"))
     {
         oSession.bBufferResponse = true;
     }
 }
示例#3
0
        //本体---------------------------------------------------------------------------------------------------------------------
        void FiddlerApplication_AfterSessionComplete(Fiddler.Session oSession)
        {
            var path = oSession.PathAndQuery;

            if (!path.StartsWith("/guild_other/member_list/")) // 団員一覧のAPI以外は無視する
            {
                if (path.StartsWith("//guild_other/guild_info"))
                {
                    guildname(oSession);
                    if (hikoukaidan.check2 == false)
                    {
                        Console.WriteLine("unchi");
                        show();
                    }
                }

                /*団プロフ通ってない時はスルー?
                 * if(path.Contains(GlobalVar.guildidcheck) == false)
                 * {
                 *  oSession.Ignore();
                 *  return;
                 * }
                 */

                //非公開の団を探す
                if (path.StartsWith("/guild_main/content/detail/"))
                {
                    hikoukai(oSession);
                }

                oSession.Ignore();
                return;
            }
            //コンソールに書く
            Console.WriteLine(oSession.fullUrl);
            //セッション情報をjson化して解析
            var a = oSession.GetResponseBodyAsString();

            Console.WriteLine(a);
            var test  = DynamicJson.Parse(a);
            int index = 0;

            //団プロフ→1ページ目に飛ぶことを想定
            if (test.current == "1" && GlobalVar.page1 == false && path.Contains(GlobalVar.guildidcheck) == true)
            {
                foreach (int x in test.list)
                {
                    if (int.Parse(test.list[index].level) >= 175)
                    {
                        GlobalVar.over175++;
                    }
                    GlobalVar.totalrank += int.Parse(test.list[index].level);
                    //var r1 = test.list[index].level;
                    //Console.WriteLine(r1);
                    index++;
                    GlobalVar.checker++;
                    GlobalVar.page1 = true;
                }
                //intをstringにキャスト
                string s = GlobalVar.checker.ToString();
                writeGuildnum(s + "/" + test.count);
            }

            //2ページ目初回のみカウント
            if (test.current == "2" && GlobalVar.page2 == false && path.Contains(GlobalVar.guildidcheck) == true)
            {
                foreach (int x in test.list)
                {
                    if (int.Parse(test.list[index].level) >= 175)
                    {
                        GlobalVar.over175++;
                    }
                    GlobalVar.totalrank += int.Parse(test.list[index].level);
                    index++;
                    GlobalVar.checker++;
                    GlobalVar.page2 = true;
                }
                //intをstringにキャスト
                string s = GlobalVar.checker.ToString();
                writeGuildnum(s + "/" + test.count);
            }

            //3ページ目初回時のみカウント
            if (test.current == "3" && GlobalVar.page3 == false && path.Contains(GlobalVar.guildidcheck) == true)
            {
                foreach (int x in test.list)
                {
                    if (int.Parse(test.list[index].level) >= 175)
                    {
                        GlobalVar.over175++;
                    }
                    GlobalVar.totalrank += int.Parse(test.list[index].level);
                    index++;
                    GlobalVar.checker++;
                    GlobalVar.page3 = true;
                }
                //intをstringにキャスト
                string s = GlobalVar.checker.ToString();
                writeGuildnum(s + "/" + test.count);
            }

            //GlobalVar.member += index;
            GlobalVar.member = (int)test.count;



            //どのページでも団員数さえ満たしているならおっけ
            //test.countは団員数
            if (GlobalVar.checker == test.count && GlobalVar.mainpage == true && path.Contains(GlobalVar.guildidcheck) == true)
            {
                Console.WriteLine("kuso");
                show();
            }



            //var arrayJson = DynamicJson.Parse(a);
            //var json = arrayJson.Deserialize<List>();
            //var r1 = json.id;
            // Console.WriteLine(r1);
        }