コード例 #1
0
        public List <Issue> GetAllComics(int numberOfCalls, int startingOffset, int pageResults)
        {
            var result = new List <Issue>();

            var api_key = "f4f09d38e76dd9b82640fe34672187c7eab5ef73";

            pageResults = pageResults > 100 ? 100 : pageResults;
            for (int i = 0; i < numberOfCalls; i++)
            {
                var client = new RestClient("http://comicvine.gamespot.com/api");

                var request = new RestRequest("issues", Method.GET);
                request.AddParameter("api_key", api_key);
                request.AddParameter("field_list", "description,id,image,issue_number,name,store_date");
                request.AddParameter("limit", pageResults);
                request.AddParameter("offset", startingOffset);
                request.AddParameter("format", "json");

                IRestResponse  response = client.Execute(request);
                IssuesResponse issues   = JsonConvert.DeserializeObject <IssuesResponse>(response.Content);
                issues.results = issues.results.Where(x => x.Name != null && x.Name != "").ToList();
                result.AddRange(issues.results);

                startingOffset = startingOffset + pageResults;
            }

            return(result);
        }
コード例 #2
0
        public async Task <List <Issue> > GetIssuesAsync(int offset, int projectId)
        {
            List <Issue>        issues   = null;
            HttpResponseMessage response = await client.GetAsync("/issues.json?limit=50&offset=" + offset + "&project_id=" + projectId);

            if (response.IsSuccessStatusCode)
            {
                IssuesResponse issuesResponse = await response.Content.ReadAsAsync <IssuesResponse>();

                issues = issuesResponse.issues;
                //string s = await response.Content.ReadAsStringAsync();
                //Console.WriteLine("anhlt" + s);
            }
            return(issues);
        }
コード例 #3
0
        private async Task <IssuesResponse> PostAsync(IssuesRequest request, CancellationToken token)
        {
            var postBody = request.ToJsonText();

            var httpRequestMessage = new HttpRequestMessage(HttpMethod.Post, new Uri("https://api.github.com/graphql"));

            httpRequestMessage.Headers.Add("Authorization", $"Token {GitHubAccessToken}");
            httpRequestMessage.Content = new StringContent(postBody, Encoding.UTF8, "application/json");

            var httpResponseMessage = await myHttpClient.SendAsync(httpRequestMessage, token).ConfigureAwait(false);

            httpResponseMessage.EnsureSuccessStatusCode();

            var responseBody = await httpResponseMessage.Content.ReadAsStringAsync().ConfigureAwait(false);

            return(IssuesResponse.Parse(responseBody));
        }