restFB を使用して次のコードを使用して、ユーザーのウォールに投稿しています。
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 の名を含めたいと思います。そうする方法はありますか?ユーザーIDを取得するための2つのリクエストをすでに生成しているため(リダイレクトURLから)、ユーザー名を取得するためにFacebookにさらに別のリクエストを生成したくありません。グラフ API 自体が投稿テキスト内のある種のタグをユーザー名に置き換えるメカニズムはありますか。
たとえば、次のテキストを送信してユーザー ウォールに投稿します。
#username# is doing something...
そして、それは facebook グラフ API に置き換えられます
Mark is doing something....