.NET Facebook SDK를 사용하여 Facebook 벽에있는 링크를 얻으려면 어떻게해야합니까?
내가 여기에있는 SDK를 사용하고
... 그리고 문서는 심각한이 시점에서 부족한 것으로 보인다.
.NET Facebook SDK를 사용하여 Facebook 벽에있는 링크를 얻으려면 어떻게해야합니까?
내가 여기에있는 SDK를 사용하고
... 그리고 문서는 심각한이 시점에서 부족한 것으로 보인다.
잠시 주위를 검색하고 실험하면서이 문제를 종합했습니다.
문제 중 하나는 AccessTokens가 만료된다는 것입니다. 따라서 이전 AccessToken이 만료 될 때 새 AccessToken을 검색 할 코드를 작성해야합니다.
public static class FacebookUpdates
{
private static string AppId = "00000000";
private static string AppSecret = "xxxxxxxxx";
private static string UserID = "0000000000";
private static string AccessToken;
public static dynamic GetLinks()
{
var fb = new FacebookClient();
if (string.IsNullOrEmpty(AccessToken)) AccessToken = GetAccessToken(fb); // Cache the result in static variable AccessToken
fb.AccessToken = AccessToken;
var query = string.Format("SELECT link_id, title, url FROM link WHERE owner = {0} LIMIT 5", UserID);
dynamic parameters = new ExpandoObject();
parameters.q = query;
dynamic results;
try
{
results = fb.Get("/fql", parameters);
}
catch (FacebookOAuthException)
{
AccessToken = GetAccessToken(fb); // Cache the result in static variable AccessToken
fb.AccessToken = AccessToken;
// Retry with new AccessToken
results = fb.Get("/fql", parameters);
}
return results;
}
private static string GetAccessToken(FacebookClient fb)
{
dynamic result = fb.Get("oauth/access_token", new
{
client_id = AppId,
client_secret = AppSecret,
grant_type = "client_credentials"
});
return result.access_token;
}
}
지금 당신이 (죄송합니다,이 예제는 VB에) 코드 숨김에서
GetLinks()
를 호출하는 사용자 정의 컨트롤을 만들 수 있습니다
그리고 이것이 내가 생각 해낸 것입니다 ...
Public Shared FacebookLinks As Object = FacebookUpdates.GetLinks().data
그리고 사용자 정의 컨트롤은 다음과 같을 수 있습니다 ...
<%@ OutputCache Duration="600" VaryByParam="None" %>
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="FacebookUpdates.ascx.vb" Inherits="FacebookUpdates" %>
<%For Each Link In FacebookLinks%>
<p><a href="<%= Link.url %>" rel="nofollow" target="_blank"><%= Link.title%></a></p>
<%Next%>
당신은 AS를 작성하지 않는 경우 P.NET 응용 프로그램 등을 사용하면 코드를 작성할 필요가 없습니다. Windows PowerShell과 http://facebookpsmodule.codeplex.com을 사용해보십시오.