コード例 #1
0
            // The thread procedure performs the task, such as formatting
            // and printing a document.
            public void ThreadProc()
            {
                CookieAwareWebClient cln = new CookieAwareWebClient();

                cln.CookieContainer.SetCookies(new Uri("https://www.humblebundle.com"), "_simpleauth_sess=" + token + ";");
                this.Res = cln.DownloadString("https://www.humblebundle.com/api/v1/order/" + gaem);
                Dictionary <string, object> vals = JsonConvert.DeserializeObject <Dictionary <string, object> >(this.Res, new JsonConverter[] { new MyConverter() });

                if (vals.TryGetValue("subproducts", out var o))
                {
                    var jarr = (JArray)o;
                    foreach (JObject root in jarr)
                    {
                        var subp = root.ToObject <Dictionary <string, object> >();
                        if (library.GameFromDict(cln, subp, out var info1, out var meta))
                        {
                            var data = new HumbleGameData()
                            {
                                PurchaseID  = gaem,
                                Name        = info1.Name,
                                Info        = info1,
                                Meta        = meta,
                                Json        = root.ToString(),
                                MachineName = info1.GameId
                            };
                            if (Values.Keys.Contains(info1.Name))
                            {
                                logger.Info("DOUBLE: " + gaem + " " + info1.Name);
                            }
                            else
                            {
                                Values.Add(info1.Name, data);
                            }
                        }
                    }
                }
            }