フォト蔵へアップロードできません(C#)
フォト蔵へアップロードするとエラー400が出てしまいます。
何が原因なのでしょうか?原因を教えてください。
以下コード
//フォト蔵へのアップロード(注意動きません)//
//送信するファイルのパス
filePath="C:\\Users\\Public\\Pictures\\Sample Pictures\\test.jpg";
//送信先のURL
string url1 = "http://api.photozou.jp/rest/photo_add";
//文字コード
System.Text.Encoding enc =
System.Text.Encoding.GetEncoding("UTF-8");
//WebRequestの作成
System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)
System.Net.WebRequest.Create(url1);
//メソッドにPOSTを指定
req.Method = "POST";
//ベーシック認証宣言、アカウントとパスワード
req.PreAuthenticate = true;
NetworkCredential network = new NetworkCredential("mailaddress@hoge.com", "password");
req.Credentials = network;
//ヘッダを設定
req.Headers.Add("album_id", "1234567");
//ContentTypeを設定
req.ContentType = "image/jpeg";
//POST送信するデータを作成
System.IO.FileStream fs = new System.IO.FileStream(
filePath, System.IO.FileMode.Open,
System.IO.FileAccess.Read);
//POST送信するデータの長さを指定
req.ContentLength = fs.Length;
//データをPOST送信するためのStreamを取得
System.IO.Stream reqStream = req.GetRequestStream();
//ファイルの内容を送信
byte[] readData = new byte[0x1000];
int readSize = 0;
while (true)
{
readSize = fs.Read(readData, 0, readData.Length);
if (readSize == 0)
break;
reqStream.Write(readData, 0, readSize);
}
fs.Close();
reqStream.Close();
//サーバーからの応答を受信するためのWebResponseを取得
System.Net.HttpWebResponse res =
(System.Net.HttpWebResponse) req.GetResponse();
//応答データを受信するためのStreamを取得
System.IO.Stream resStream = res.GetResponseStream();
//受信
System.IO.StreamReader sr =
new System.IO.StreamReader(resStream, enc);
//閉じる
sr.Close();