コード例 #1
0
ファイル: AddonWebApi.cs プロジェクト: sonabit/armabrowser
        public static async Task PostInstalledAddonsKeysAsync(IEnumerable <IAddon> addons)
        {
            var request = new HttpRequestMessage(HttpMethod.Post, "Addons").htua();

            var restItems = addons.Where(a => a.IsInstalled).Select(a => new RestAddon()
            {
                DisplayText = a.DisplayText,
                ModName     = a.ModName,
                Name        = a.Name,
                Version     = a.Version,
                Keys        = a.KeyNames.Select(k => new RestAddonKey()
                {
                    Key = k.Name, PubK = k.PubK.ToBase64()
                }).ToArray()
            }).ToArray();

            request.AddJsonBody(restItems);

            await ExecuteRequest(request);
        }
コード例 #2
0
ファイル: AddonWebApi.cs プロジェクト: sonabit/armabrowser
        public static async Task <IEnumerable <RestAddonInfoResult> > GetAddonInfosAsync(params string[] addonKeyNames)
        {
            try
            {
                var request = new HttpRequestMessage(HttpMethod.Post, "Addons/AddonInfo").htua(_offset);

                request.AddJsonBody(addonKeyNames);

                HttpResponseMessage restResult = await RestClient.SendAsync(request);

                if (restResult.StatusCode == HttpStatusCode.OK)
                {
                    var c = await restResult.Content.ReadAsStringAsync();

                    var o = JsonConvert.DeserializeObject <List <RestAddonInfoResult> >(c);
                    return(o);
                }
            }
            catch (Exception exception)
            {
                Debug.WriteLine(exception);
            }
            return(new RestAddonInfoResult[0]);
        }