コード例 #1
0
        public async Task <FrameNumberExtra> RegisterExtra(string userName, string token, string uuid, FrameNumberExtra frameNumberExtra, bool deleteExtra)
        {
            if (userName == "" || token == "" || uuid == "" || frameNumberExtra == null)
            {
                return(new FrameNumberExtra());
            }

            FrameNumberExtraResponse response = await awsHttpClient.RegisterExtra(new FrameNumberExtraRequest()
            {
                Username = userName, Token = token, UID = uuid, FrameNumberExtra = frameNumberExtra, DeleteExtra = deleteExtra
            });

            if (response == null || response?.FrameNumberExtra == null)
            {
                return(new FrameNumberExtra()); // empty
            }
            return(response.FrameNumberExtra);
        }
コード例 #2
0
        public async Task <FrameNumberExtra> RegisterExtra(string userName, string token, string uuid, FrameNumberExtra frameNumberExtra, bool deleteExtra)
        {
            if (userName == "" || token == "" || uuid == "" || frameNumberExtra == null)
            {
                return(new FrameNumberExtra());
            }

            if (client.DefaultRequestHeaders.Contains("code"))
            {
                client.DefaultRequestHeaders.Remove("code");
            }
            client.DefaultRequestHeaders.Add("code", Constants.AzureApiKey_RegisterExtra);

            try
            {
                string postBody = JsonConvert.SerializeObject(new FrameNumberExtraRequest()
                {
                    Username = userName, Token = token, UID = uuid, FrameNumberExtra = frameNumberExtra, DeleteExtra = deleteExtra
                });

                HttpResponseMessage response = await client.PostAsync(Constants.AzureEndPoint_RegisterExtra, new StringContent(postBody, Encoding.UTF8, "application/json"));

                if (response.IsSuccessStatusCode)
                {
                    string str = await response.Content.ReadAsStringAsync();

                    //     AnalyticsService.TrackEvent(str);
                    var settings = new JsonSerializerSettings
                    {
                        NullValueHandling     = NullValueHandling.Ignore,
                        MissingMemberHandling = MissingMemberHandling.Ignore
                    };
                    FrameNumberExtraResponse frameNumberExtraResponse = JsonConvert.DeserializeObject <FrameNumberExtraResponse>(str, settings);
                    if (frameNumberExtraResponse == null || frameNumberExtraResponse?.FrameNumberExtra == null)
                    {
                        return(new FrameNumberExtra()); // empty
                    }
                    return(frameNumberExtraResponse.FrameNumberExtra);
                }
                else
                {
                    string str = await response.Content.ReadAsStringAsync();

                    AnalyticsService.TrackEvent(str);
                }
            }
            catch (HttpRequestException hre)
            {
                AnalyticsService.TrackError(hre);
            }
            catch (TaskCanceledException hca)
            {
                AnalyticsService.TrackError(hca);
                AnalyticsService.TrackEvent("Request canceled");
            }
            catch (Exception ex)
            {
                AnalyticsService.TrackError(ex);
            }
            finally
            {
                /*if (httpClient != null)
                 * {
                 *  httpClient.Dispose();
                 *  httpClient = null;
                 * }*/
            }

            return(new FrameNumberExtra());
        }