Как разместить приложение на стене Facebook, используя Facebook C# SDK?

Это моя первая попытка использовать этот 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 ответа

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

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

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

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

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

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

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

Другие вопросы по тегам