0

Я отправляю на стену пользователя, используя следующий код, используя restFB.Использование имени пользователя в facebook graph api post

String myAccessToken = null; 
String appId="my app id ......"; 
String appSecret="my app secret"; 

// facebook user id of the user on whose wall to post 
String userId="user id ..."; 

DefaultFacebookClient dfc = new DefaultFacebookClient(); 
AccessToken accessToken = dfc.obtainAppAccessToken(appId,appSecret); 
myAccessToken = accessToken.getAccessToken(); 

FacebookClient facebookClient = new DefaultFacebookClient(myAccessToken); 

FacebookType publishMessageResponse = facebookClient.publish(userId+"/feed", FacebookType.class, Parameter.with("message", "test")); 

System.out.println("Published message ID: " + publishMessageResponse.getId()); 

Все работает нормально.

Но теперь я хочу включить имя пользователя facebook в сообщение. Есть ли способ сделать это? Я не хочу генерировать еще один запрос на facebook для получения имени пользователя, так как я уже генерирую 2 запроса на получение идентификатора пользователя (из URL-адреса перенаправления). Есть ли какой-либо механизм, который graph api сам заменяет какой-то тег в текстовом сообщении с именем пользователя.

Например я отправить следующий текст, чтобы отправить на пользователя стене:

#username# is doing something... 

И заменяется facebook графа апи

Mark is doing something.... 

ответ

1

Я не хочу, чтобы создать еще один запрос на Facebook для получения имени пользователя, так как я уже генерирую 2 запроса на получение идентификатора пользователя (из URL-адреса перенаправления).

No Вы не можете. Вы должны сделать запрос на получение имени. /me?fields=name

Но почему это имеет значение, для этого потребуется очень мало времени.

+1

Я знаю, что время отклика facebook как можно ниже, но то же самое не верно в отношении подключения к Интернету моего сервера. :) –

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