2010-08-21 2 views
1

Я пишу приложение Facebook, которое должно размещаться на стене друга от имени пользователя, но вне сферы применения холста. У меня есть следующий:Опубликовать на стене друга от имени пользователя

  • App ID
  • App секрет
  • publish_stream разрешение для плаката

Это теоретически должно быть достаточно, чтобы сделать то, что я хочу. Что я делаю сейчас:

  1. Используйте идентификатор приложения и приложение, чтобы получить токен OAuth, представляющий мое приложение (см. «Аутентификация как приложение» here).
  2. Попытка опубликовать на стене моего друга с помощью POST на/friends_wall/корма (см here) и маркер OAuth извлекаться в шаге 1.

Однако, это заканчивается размещение на стене друга, как то другом, а не пользователя (у приложения также есть права publish_stream для друга). Это не слишком неожиданно, так как нигде в этом процессе я не указал, кем должен быть плакат.

Мой вопрос: Возможно ли получить токен OAuth для приложения, представляющего пользователя? Если нет, есть ли способ опубликовать на стене друга пользователя вне сферы применения холста?

Спасибо,
Ashoat

+0

Помните, что вы больше не сможете отправлять сообщения на стене другого пользователя через API с 6 февраля 2013 года, см. Https://developers.facebook.com/roadmap/Единственный способ, которым это будет возможно после этого точка будет использовать диалог подачи, чтобы пользователь активировал его. – CBroe

ответ

2

На самом деле, я думаю, я понял, ответ здесь. Я не думаю, что есть способ сделать это в новом API OAuth, но, похоже, есть способ с более старым API REST. См. Документацию here.

Просто замените шаг 2 в моем вопросе с вышеуказанной документации, по-прежнему используя маркер OAuth с шага 1, и вы должны быть хорошо :)

+0

На самом деле, я думаю, что я понял ответ на Facebook-чат Ashoat;) –

+0

Да, это был на самом деле Тайлер. – Ashoat

+0

Я думаю, что facebook хотел избавиться от этой функции, это, вероятно, слишком злоупотребляло. –

3

Используйте ниже код для размещения на стене друзей:

NSMutableDictionary *paramspost = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
            @"My test app", @"name", 
            @"http://www.google.com", @"link", 
            @"FBTestApp app for iPhone!", @"caption", 
            @"This is a description of my app", @"description", 
            @"Hello!\n\nThis is a test message\nfrom my test iPhone app!", @"message", 
            nil]; 

// Publish. 
// This is the most important method that you call. It does the actual job, the message posting. 
[ facebook requestWithGraphPath:@"100001433267690/feed" andParams:paramspost andHttpMethod:@"POST" andDelegate:self]; 

, где «100001433267690» должны быть вашими друзьями userid в facebook

Смежные вопросы