2

C# SDK を使用して Facebook のオープン グラフにビデオをアップロードしようとしています。ビデオは正常にアップロードされているようで、アクティビティの ID を取得しましたが、サンプル メタデータしか表示されません。

少し掘り下げた後、私はこれを見つけました:

ユーザーの Open Graph アクションを公開し、それに対応する接続​​オブジェクト タイプをステップ 3 で定義する前に、Open Graph メタタグを使用してこのオブジェクトを表すパブリックにアクセス可能な Web ページを作成する必要があります。このオブジェクト ページが作成されると、Graph API を使用してアクションを発行できます。

これはクライアント側のアプリなので、Facebook を参照できる Web ページがありません。では、正しいパラメーターを渡すにはどうすればよいでしょうか。

これが私のコードです:

var parameters = new Dictionary<string, object>();
parameters["source"] = new FacebookMediaObject { ContentType = "video/mpeg", FileName = "video.mpeg" }.SetValue(File.ReadAllBytes(@"D:\sample video.MP4"));
parameters["og:title"] = "Sample video";
parameters["title"] = "Sample video";
parameters["og:description"] = "Test description";
parameters["highlight"] = "http://samples.ogp.me/287287444686523"; // If I don't put this, the upload fails
fb.PostAsync("/me/myobjectname:share", parameters);

ありがとう!

4

1 に答える 1

0

バージョン6の場合、次のことができます。

var fb = new FacebookClient(accessToken);
string attachementPath = @"C:\image.jpg";

using (var stream = File.OpenRead(attachementPath))
{
    dynamic result = fb.Post("me/photos",
                                new
                                    {
                                        message = "upload using Facebook C# SDK",
                                        file = new FacebookMediaStream
                                                {
                                                    ContentType = "image/jpg",
                                                    FileName = Path.GetFileName(attachementPath)
                                                }.SetValue(stream)
                                    });
}

詳細はこちら

于 2012-04-25T04:50:22.367 に答える