こんにちは。
Windows10でWPFのアプリケーションを開発しています。
Visual Studio 2015 Communityを使っています。
###前提・実現したいこと
Todo.lyのタスクを管理したいです。
トークンを取得してセットして処理をするのだと思いますが、
取得とセット方法がわからずにいます。
###試したこと
Browser(Edge)でhttps://todo.ly/api/authentication/token.jsonにアクセスし、トークンを表示できました。
###発生している問題・エラーメッセージ
コードからはresponseがnullです。
###該当のソースコード
C#
1using Newtonsoft.Json; 2using System; 3using System.Collections.Generic; 4using System.Linq; 5using System.Net.Http; 6using System.Text; 7using System.Threading.Tasks; 8using System.Windows; 9 10namespace Todoly { 11 class Todoly { 12 public async void Get() { 13 var encode = Encoding.GetEncoding("UTF-8"); 14 var tokenuri = "https://todo.ly/api/authentication/token.json"; 15 Token token; 16 using (var client = new HttpClient()) { 17 // ユーザーエージェント文字列をセット 18 client.DefaultRequestHeaders.Add("User-Agent", "Shin-Mozilla/5.5 (Windows NeXT 5.5; Trident/7.0; rv:11.0) like GeckohKamen"); 19 // 受け入れ言語をセット 20 client.DefaultRequestHeaders.Add("Accept-Language", "ja-JP"); 21 22 HttpResponseMessage response; 23 response = await client.GetAsync(tokenuri); 24 string result = await response.Content.ReadAsStringAsync();//<-ここでresultはnull 25 token = JsonConvert.DeserializeObject<Token>(result); 26 } 27 28 List<TodolyObject> tasks = new List<TodolyObject>(); 29 var uri = "https://todo.ly/api/items.json"; 30 31 using (var client = new HttpClient()) { 32 // ユーザーエージェント文字列をセット 33 client.DefaultRequestHeaders.Add("User-Agent", "Shin-Mozilla/5.5 (Windows NeXT 5.5; Trident/7.0; rv:11.0) like GeckohKamen"); 34 // 受け入れ言語をセット 35 client.DefaultRequestHeaders.Add("Accept-Language", "ja-JP"); 36 37 HttpResponseMessage response; 38 response = await client.GetAsync(uri); 39 string result = await response.Content.ReadAsStringAsync(); 40 41 tasks = JsonConvert.DeserializeObject<List<TodolyObject>>(result); 42 MessageBox.Show("now"); 43 } 44 } 45 } 46 47 public class TodolyObject { 48 public long? Id; 49 public string Email; 50 public string Password; 51 public string FullName; 52 public double? TimeZone; 53 public bool? IsProUser; 54 public long? DefaultProjectId; 55 public bool? AddItemMoreExpanded; 56 public bool? EditDueDateMoreExpanded; 57 public int? ListSortType; 58 public int? FirstDayOfWeek; 59 public int? NewTaskDueDate; 60 } 61 62 public class Token { 63 public string TokenString; 64 public string UserEmail; 65 public long ExpirationTime; 66 } 67} 68
###補足情報(言語/FW/ツール等のバージョンなど)
Microsoft Visual Studio Community 2015
Version 14.0.25424.00 Update 3
Microsoft .NET Framework
Version 4.6.01038
インストールしているバージョン:Community
Visual C# 2015 00322-20000-00000-AA575
Microsoft Visual C# 2015
です。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/05 13:46 編集
2016/12/05 13:46 編集