こんにちは。
Windows10でWPFのアプリケーションを開発しています。
Visual Studio 2015 Communityを使っています。
###前提・実現したいこと
Todo.lyにPostでItemを追加したいです。
###試したこと
下記のとおり。
###発生している問題・エラーメッセージ
Postされないです。。。
エラーも発生しないです。
###該当のソースコード
C#
1 private const string UserName = "cancat"; 2 private const string Password = "password"; 3 private const string useragent = "Shin-Mozilla/5.5 (Windows NeXT 5.5; Trident/7.0; rv:11.0) like GeckohKamen"; 4 5 private const string BaseUri = "https://todo.ly"; 6 private const string TokenUri = "api/authentication/token.json"; 7 private static string UriOfItems = "api/items.json"; 8 9 private static HttpClient client; 10 private static DateTime? ExpirationTime = null; 11 12 static Todoly() { 13 var credentials = Encoding.ASCII.GetBytes($"{UserName}:{Password}"); 14 15 client = new HttpClient(); 16 client.DefaultRequestHeaders.Add("User-Agent", useragent); 17 client.DefaultRequestHeaders.Add("Accept-Language", "ja-JP"); 18 client.BaseAddress = new Uri(BaseUri); 19 client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(credentials)); 20 } 21 22 private void Window_Loaded(object sender, RoutedEventArgs e) { 23 todoly(); 24 } 25 26 private async void todoly() { 27 var todoly = new Todoly.Todoly(); 28 //var items = await todoly.GetAllItems(); 29 todoly.PostItems(""); 30 } 31 32 public void PostItems(string message) { 33 message = "カーテン。"; 34 35 var encode = Encoding.GetEncoding("UTF-8"); 36 var postData = "Content=" + Uri.EscapeDataString(message); 37 var postDataBytes = encode.GetBytes(postData); 38 39 // WebRequest作成 40 var requestUrl = string.Format(BaseUri, UriOfItems); 41 var request = WebRequest.Create(requestUrl); 42 request.Method = "POST"; 43 request.ContentType = "application/x-www-form-urlencoded"; 44 // POSTデータ長を指定 45 request.ContentLength = postDataBytes.Length; 46 try { 47 // データをPOST送信するためのStreamを取得 48 var requestStream = request.GetRequestStream(); 49 // 送信するデータを書き込む 50 requestStream.Write(postDataBytes, 0, postDataBytes.Length); 51 requestStream.Close(); 52 } 53 catch (WebException webexception) { 54 string error = webexception.Response.ToString(); 55 } 56 catch (Exception exception) { 57 string error = exception.Message; 58 } 59 } 60 } 61} 62//http://todo.ly/apiwiki/?items/todo-ly-rest-api-method-post-items 63 64 65 66
###補足情報(言語/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/08 06:40
2016/12/08 06:52
2016/12/08 09:00