2011-02-17 8 views
0

REST API가 사용되지 않는 과정에서 기존 응용 프로그램을 facebook C# sdk로 변환하려고합니다.페이스 북 그래프 API - 비디오 업로드

우리가 현재 할 수있는 일 중 하나는 업로드하여 비디오를 게시하는 것입니다.

다음과 같이 POST 요청을 만들었지 만 '지원되지 않는 게시 요청'오류가 발생합니다.

  byte[] video = File.ReadAllBytes(TESTDATA_DIR + "Snowboarding penguin.mov"); 

     if (_FBClient != null) 
     { 
      var parameters = new Dictionary<string, object>(); 
      parameters.Add("message", "This is a Graph API unit test message containing a video! (" + DateTime.Now.ToString() + ")"); 
      parameters["caption"] = "This is the caption for the unit test message!"; 
      parameters["description"] = "This is description for the unit test message!"; 
      parameters["name"] = "This is name of the unit test message!"; 
      parameters["req_perms"] = "publish_stream"; 
      parameters["scope"] = "publish_stream"; 

      var mediaObject = new FacebookMediaObject 
      { 
       FileName = "Snowboarding penguin.mov", 
       ContentType = "video/mov", 
      }; 
      mediaObject.SetValue(video); 
      parameters.Add("source", mediaObject); 

      _FBClient.Post("me/videos", parameters); 
     } 

나는하지 그래프 API에서 지원되는 비디오 업로드에 대한 일반적인 글을 많이 볼 수 있지만 희망이 지금 FB에 의해 해결되었습니다.

누구든지이 요청을 받기 위해 올바른 방향으로 나를 조종 할 수 있습니까?

TIA

답변

1

비디오 업로딩 그래프 API가 지원되지 않는다. 이전 나머지 API를 사용해야합니다. UPDATE 페이스 북은 최근 그래프 API를 통해 업로드 비디오를 지원

 var videoPath = "c:\\sample.3gp"; 
     byte[] video = File.ReadAllBytes(videoPath); 

     var mediaObject = new FacebookMediaObject 
           { 
            FileName = "sample.3gp", 
            ContentType = "video/3gpp" 
           }; 
     mediaObject.SetValue(video); 

     dynamic parameters = new ExpandoObject(); 
     parameters.source = mediaObject; 
     parameters.method = "video.upload"; 
     parameters.access_token = "access_token"; 

     var fb = new FacebookClient(); 
     dynamic result = fb.Post(parameters); 

. 당신은 http://blog.prabir.me/post/Facebook-CSharp-SDK-Uploading-Video-via-Graph-Api.aspx

에서 페이스 북 C#을 SDK에서 그래프 API 비디오 업로드를 사용하는 방법에 대한 세부 사항을 찾을 수 있습니다 페이스 북 C#을 SDK v5.0.46 이상이 필요합니다.

var fb = new FacebookClient("access_token"); 
dynamic parameters = new ExpandoObject(); 
parameters.source = new FacebookMediaObject { ContentType = "video/3gpp", FileName = "video.3gp" }.SetValue(File.ReadAllBytes(@"c:\video.3gp")); 
parameters.title = "video title"; 
parameters.description = "video description"; 
dynamic result = fb.Post("/me/videos", parameters); 
Console.WriteLine(result); 
+0

죄송합니다. 귀하의 회신에 대한 알림을받지 못했습니다. 나는 이것을 시도했지만 '잘못된 oAuth 2.0 토큰'응답을 되찾았지만 아무런 문제없이 사진 또는 상태 메시지를 게시 할 수 있습니까? – VorTechS

+0

참고 사항 : parameters.access_token을 복사하여 붙여 넣을 때 실제로 값을 변경하십시오! ;) – VorTechS

관련 문제