Как опубликовать приложение на стене Facebook, используя Facebook C # SDK? - PullRequest
1 голос
/ 25 марта 2011

Это моя самая первая попытка использования этого SDK, так что будьте осторожны со мной. Я сделал это:

var fbWebContext = FacebookWebContext.Current;
if (fbWebContext.IsAuthorized())
{
    // post as application
    var fb = new FacebookOAuthClient { AppId = "205378862824897", AppSecret = "4deb72e26c22415fe00e44028b401114" };
    dynamic result = fb.GetApplicationAccessToken();
    var appAccessToken = result.access_token;

    Dictionary<string, object> parameters = new Dictionary<string, object>()
                                                {
                                                    {"description", "Testbeskrivning"},
                                                    {"link", "http://zitac.se"},
                                                    {"name", "Testtitel" }
                                                };
    var fbApp = new FacebookWebClient(appAccessToken);
    result = fbApp.Post(FB_ID_FANPAGE + "/feed", parameters);

    lblMessage.Text = result;
}

И получил его: (OAuthException) (# 200) Пользователь не авторизовал приложение для выполнения этого действия.

Нужны ли какие-либо настройки на странице поклонника?

Используется ASP.NEt 4.0 и SDK 5.0.7.

Ответы [ 2 ]

2 голосов
/ 25 марта 2011

Ошибка «Пользователь не авторизовал приложение ..» звучит так, как будто у пользователя Facebook нет необходимых разрешений, проверьте здесь для получения подробной информации.

Им нужно как минимум авторизовать publish_stream.

Проверьте разрешения, которые вы запрашиваете в JavaScript на вашей странице; Ссылка на JavaScript в Facebook объясняет это подробно.

Надеюсь, это поможет.

0 голосов
/ 27 марта 2011

У Энди это в основном, НО здесь есть кое-что еще, что я понял. Похоже, вы хотите опубликовать как приложение на стене пользователя. Если вы просто хотите, чтобы что-то появилось в новостной ленте пользователя, тогда вам нужно, чтобы пользователь понравился вашему приложению. А затем, когда вы публикуете сообщение на стене приложения, оно должно отображаться в ленте пользователя (фактически, во всех новостях пользователя).

Если вы хотите перейти прямо к стене пользователя, то вам необходимо опубликовать в "{facebook userid} \ feed". Имейте в виду, Facebook может или не может позволить это (я забыл, делают ли они это или нет в данный момент).

Из того, что я могу сказать, должно работать то, что вы уже сделали. Проблема, с которой вы столкнулись, заключается в том, что вы отправляете сообщение на неизвестную фан-страницу (разрешено ли приложение на этой фан-странице?)

...