C# WinForm 上傳照片到facebbok

摘要:C# WinForm 上傳照片到facebbok

最近的專案有用到 順便留下來紀錄

首先要先到facebook申請Key 

取得key後到登入facebook這部分就不寫了  網路上很多人分享

登入後 我們會取得FacebookOAuthResult

接下來開始寫post圖片的程式碼

 

var fb = new FacebookClient(FacebookOAuthResult.AccessToken);
 
//註冊POST完成事件
                fb.PostCompleted += (o, e) =>
                {
                    if (e.Cancelled)
                    {
                        var cancellationError = e.Error;
                        PostComplete(false, "取消");//這是我自訂的方法
                    }
                    else if (e.Error != null)
                    {
                        PostComplete(false,e.Error.Message);
                    }
                    else
                    {
                        PostComplete(true,"發佈成功!");                      
                    }
                };
 
                dynamic parameters = new ExpandoObject();
                parameters.message = "test";
                parameters.source = new FacebookMediaObject
                {
                    ContentType = "image/png",
                    FileName = Path.GetFileName(圖片路徑)
                }.SetValue(File.ReadAllBytes(圖片路徑));
                fb.PostAsync("me/photos", parameters);

補充一下

我用的 ExtendedPermissions = "user_about_me,user_likes,publish_stream,manage_pages,offline_access"