К основному контенту

C# и API Facebook. Пример размещения записи на стене пользователя с помощью API.

В связи с пользующимися повышенной популярностью статьями C# и API ВКонтакте. Обращение к адресу API-сервиса путем создания HTTP-запроса (POST) и Пример взаимодействия с Odnoklassniki Rest API на C#  продолжаю эту серию публикаций статьей по работе  с API Facebook.

Задача: добавлять на стену пользователя сообщение через API Facebook.

Решение:
Первое, что мы сделаем - это регистрируем наше приложение на https://developers.facebook.com
После регистрации нам будут доступны AppID и AppSecret приложения.

Чтобы отправлять данные от лица пользователя необходимо предложить ему авторизоваться на сайте Facebook. Для этого предлагаем ему перейти по следующей ссылке:

string.Format("https://www.facebook.com/dialog/oauth?client_id={0}&redirect_uri=1}&response_type=code&scope=publish_stream", AppID , RedirectUri);
где AppID - ID нашего приложения. А RedirectUri - это адрес куда вернется пользователь после авторизации. 
Также нужно уточнить, что scope=publish_stream - это перечень прав для работы с Facebook, которые мы запрашиваем у пользователя. В данном случае - это права на публикацию сообщений от лица пользователя.
Пользователь возвращается на указанный нами адрес с параметром code. Этот параметр мы будем использовать для получения Token-а (ключа доступа).

Выполняем наш C# POST метод. В качестве адреса указываем 
https://graph.facebook.com/oauth/access_token, а в качестве параметров: client_id={1}&client_secret={2}&code={3}&redirect_uri={4},
где
client_id - AppID приложения
client_secret - AppSecret приложения
code - параметр, полученный из строки запроса
redirect_uri - обратный адрес. 
Полученный ответ будет содержать access_token. С ним будем работать дальше.
Ну а дальше все просто. Для публикации сообщения на стене пользователя снова выполняем наш C# POST метод. В качестве адреса указываем https://graph.facebook.com/me/feed, а в качестве параметров: access_token={0}&message={1},
где 
access_token - полученный ранее ключ доступа
message - сообщение на стену пользователя
Оказалось все очень просто. 

Комментарии

  1. А как отправить приглашение в данное приложение друзьям этого пользователя (с проверкой на отсутсвие этого приложения у них) ?

    ОтветитьУдалить
  2. Антон, все возможные методы API доступные в Facebook описаны здесь http://developers.facebook.com/docs/reference/api/

    ОтветитьУдалить
    Ответы
    1. Активность друзей на Facebook - http://lecaw.ru/index.php/categories/jquery/item/262-facebook-api-uznay-chto-delayut-druzya

      Удалить

Отправить комментарий

Популярные сообщения из этого блога

Пример взаимодействия с Odnoklassniki Rest API на C#.

Итак, как и обещал, продолжаю тему взаимодействия с различными API. В прошлый раз писал про  API ВКонтакте , сегодня напишу про API Одноклассников. Первое, что нам нужно сделать - это зарегистрироваться как разработчик на Одноклассниках. Сделать это можно по следующей ссылке  Форма регистрации разработчика приложений Получив права разработчика, необходимо зарегистрировать сайт как приложение. Подробно как это сделать можно прочитать  здесь После того как сайт будет зарегистрирован придет письмо, содержащее: Application ID: xxxxxx. Публичный ключ приложения: xxxxxxxxxxxxxxxxxxxxxxxxx. Секретный ключ приложения:  xxxxxxxxxxxxxxxxxxxxxxxxx. Ссылка на приложение: http://www.odnoklassniki.ru/games/xxxxx Используя эти данные можно начать работу с API. Для выполнения запросов к API пользователь должен авторизоваться в Одноклассниках. Добавляем на нашем сайте ссылку для авторизации пользователя: http://www.odnoklassniki.ru/oauth/authorize?client_id={0}&scope={1}&

C# и API ВКонтакте. Обращение к адресу API-сервиса путем создания HTTP-запроса (POST)

В статье  C# POST. Отправляем запросы на адрес стороннего сервера  я рассказал про метод, с помощью которого можно работать с различным API, принимающими POST запрос и возвращающими ответ в виде json или xml. Сегодня я хочу написать, как я применял этот метод при работе с API  ВКонтакте. Для примера возьму задачу получения через API списка групп, в которых состоит пользователь. В первую очередь необходимо зарегистристрировать наш сайт как приложение ВКонтакте. Заходим по ссылке  http://vk.com/editapp?act=create&site=1  и подключаем наш сайт. Дальше задача  делится на две подзадачи, а именно: авторизация пользователя и обращение к API для получения списка групп. Для авторизации мы пользователю предлагаем перейти по следующей ссылке: http://api.vkontakte.ru/oauth/authorize? response_type=code&redirect_uri={0} &client_id={1} &scope={2} &display=page , redirect_uri - адрес страницы нашего сайта, куда будет возвращен пользователь после авторизации Вконтак

IIS (Internet Information Services) и applicationHost.config. Изменение доменных привязок.

Сегодня затронем тему настроек IIS (Internet Information Services). Речь пойдет о версии IIS 7.0 (7.5). Допустим у вас есть  большое количество поддоменов, которые нужно привязать к сайту или быстро исправить на уже существующих привязках IP адрес. Стандартный интерфейс IIS позволяет редактировать привязки по одной, что в нашем случае не очень-то удобно. См. картинку Чтобы ускорить процесс, нужно вспомнить, что все доменные привязки (и не только, а и другие настройки) хранятся в конфигурационном файле applicationHost.config. Данный файл находится по адресу C:\Windows\System32\inetsrv\config\ В файле отредактировать привязки можно очень быстро.