소셜 미디어 통합을 앱으로 확장하고 있습니다.
이 게시물을 찾았 지만 적절한 답변 이 없습니다.
간단히 말해서 :
user1의 담벼락에 사진을 게시합니다 (로그인 한 후).
포스트 user2의 담벼락을 "공유"합니다 (로그인 한 후).
현재 로그인 한 계정에 로그인하여 사진을 업로드 할 수 있어야합니다 (이를 수행했습니다).
나는 이것이 필요한 논리라고 생각합니다.
post_id를 검색하고 다른 사용자 타임 라인에 공유 / 게시합니다. post_id 검색을 포함하여 모든 작업을 수행했습니다. 이제 나는 막혔고 해결책을 찾을 수없는 것 같습니다.
그것은 Windows Forms 앱입니다 (판단하지 마십시오-내 전화가 아님).이 코드를 사용하여 로그인을 생성합니다.
public static string GenerateLoginUrl()
{
dynamic parameters = new ExpandoObject();
parameters.client_id = ""; //app id
parameters.redirect_uri = "https://www.google.com";
parameters.response_type = "token";
parameters.display = "popup";
var fb = new FacebookClient();
Uri loginUri = fb.GetLoginUrl(parameters);
return loginUri.AbsoluteUri;
}
다음을 사용하여 위의 URL로 이동 한 후 유효성을 검사합니다.
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
if (webBrowser1.Visible)
{
var fb = new FacebookClient();
FacebookOAuthResult oauthResult;
if (fb.TryParseOAuthCallbackUrl(e.Url, out oauthResult))
{
if (oauthResult.IsSuccess)
{
//happy
}
}
}
}
다음과 같이 FacebookClient 클래스 인스턴스의 "PostCompleted"메서드에서 post_id를 검색합니다.
fb.PostCompleted += (oo, eee) =>
{
if (eee.Cancelled || eee.Error != null)
{
return;
}
var result = eee.GetResultData();
JsonObject myObj = (JsonObject)result;
string post_id = myObj["post_id"].ToString();
};
나는 모든 작은 조각과 조각을 처리했지만 지금은 그것을 함께 모으고 있습니다. 미리 감사드립니다. 어떤 정보와 유용한 링크라도 좋을 것입니다.
마침내 내 요구 사항을 충족시키기 위해 작동했습니다 ...
참고 : 이 답변은 C # Facebook API를 사용한 인증 및 게시의 기본 사항을 이해하고 있다고 가정합니다.
fb.PostCompleted += (o, ee) =>
{
if (ee.Cancelled || ee.Error != null)
return;
JsonObject myObj = (JsonObject)ee.GetResultData();
string href = String.Format("https://www.facebook.com/photo.php?fbid={0}&set=a.{1}", myObj["id"].ToString(), myObj["post_id"].ToString());
this.Invoke(new MethodInvoker(delegate()
{
ClientLogin loginDialog = new ClientLogin(href);
loginDialog.Show();
}));
};
fb.PostTaskAsync(parameters);
작업이 완료되면 다음 코드를 호출하는 "WebBrowser"컨트롤이 포함 된 양식을 엽니 다.
webBrowserOAuth.Navigate(String.Format(@"https://www.facebook.com/dialog/feed?app_id={0}&href={1}&redirect_uri={2}", app_id, _href, redirect_uri));
그런 다음 "webBrowserOAuth_Navigated"
요구 사항을 충족 하도록 이벤트를 처리하십시오 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다