エラー400が返ってきます。
原因をご存知の方教えてください
プログラム全文は以下に掲載しています。
http://d.hatena.ne.jp/bontensuzuki/20110505/1304545098
以下のコードはYoutubeのデベロッパガイド
「ブラウザベースのアップロード」
「手順 1 - 動画メタデータのアップロード」
http://code.google.com/intl/ja/apis/youtube/developers_guide_protocol.html#Browser_based_uploading
を参考にして書いています。
「ClientLogin トークン」は受け取っています。
//Youtubeの動画投稿コード(動かない)
//送信先のURL
string url = "http://gdata.youtube.com/action/GetUploadToken";
//文字コード
System.Text.Encoding enc =
System.Text.Encoding.GetEncoding("UTF-8");
///投稿できる文字数の制約上、以下はブログを参照してください
ステータスが 400 (Bad Request) なのだから、リクエストの内容がおかしい。
ぱっと見て、おかしいところ。
回答ありがとうございます。
先ず本来入れるべきでない、boudaryが一部入っていたので、それは省きました。ご指摘ありがとうございます。
以下の考え方をもとに再度動作確認をしましたが、同様にステータス「400」でNGとなりました。
---------------------------
1)「マルチパートの体裁になっていない」ですが、
Youtubeのデベロッパガイド
「ブラウザベースのアップロード」
「手順 1 - 動画メタデータのアップロード」
http://code.google.com/intl/ja/apis/youtube/developers_guide_pro...
を参照しています。質問がきちんと書いていないので申し訳ありませんでしたが、「メタデーターのアップロードで400を喰らう」
が正しい質問です。
その手順1を見ると
全体ヘッダは--Content-Type: application/atom+xml; charset=UTF-8となっております。
実際に、動画データのアップロードは手順2でになり、今回の質問手順1には含まれませんので良いのかなと思っています。
したがって、A)Content-Typeは 正しいのではないか
B)boundaryはご指摘のとおり省いたのが正しいのではないか
C)バイナリのヘッダは不要のままではないか
と思っております。
2)「entryのXML宣言がない」ですが、
はてな日記にはなぜか表示されていませんでしたが、「<?xml version="1.0"?>」をxmlの冒頭に入れております。
(チェック漏れですみません。表示されませんでしたので 括弧:<を2バイト文字にあえてしています)