8

Graph API でアプリを使用するための招待状を送信するにはどうすればよいですか? 参考書を見たのですが、なかなか合うものがありませんでした。どんな手掛かり?

4

3 に答える 3

5

HTML / javascriptの例:

<html>
  <head>
  <title>My Great Website</title>
  </head>
  <body>
  <div id="fb-root"></div>
  <script src="http://connect.facebook.net/en_US/all.js">
  </script>
  <script>
    FB.init({ 
      appId:'YOUR_APP_ID', cookie:true, 
      status:true, xfbml:true 
    });

    FB.ui({ method: 'apprequests', 
      message: 'Here is a new Requests dialog...'});
  </script>
  </body>
</html>

リンクのクリックイベントなどにJavaScriptを関連付けることができます。

あなたはここで詳細を見つけることができます:http:
//developers.facebook.com/blog/post/464/

于 2011-05-22T14:20:50.797 に答える
4

タグから得たように、restfbを使用する必要がある場合は、これを試すことができます:

これは、認証トークンを取得して apprequest を送信する自己完結型の junit テストです。ユーザーが生成した auth_token は必要ありませんが、このような apprequests を送信できるのは、アプリを既に承認しているユーザーのみです。

依存関係は、JUnit、Commons HttpClient、および restfb 自体です。

package com.apprequesttest;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.methods.GetMethod;
import org.junit.Test;

import com.restfb.DefaultFacebookClient;
import com.restfb.Facebook;
import com.restfb.FacebookClient;
import com.restfb.Parameter;
import com.restfb.types.FacebookType;

public class AppRequestTest
{
    @Test
    public void testAppRequest() throws Exception
    {
        String appId = "YOUR_APP_ID";
        String appSecret = "YOUR_ACCESS_TOKEN";
        String tokenUrl = "https://graph.facebook.com/oauth/access_token?client_id=" + appId + "&client_secret=" + appSecret
                + "&grant_type=client_credentials";
        HttpClient client = new HttpClient();
        HttpMethod method = new GetMethod(tokenUrl);

        client.executeMethod(method);
        String rawAccessToken = new String(method.getResponseBody());

        String accessToken = rawAccessToken.split("=")[1];

        FacebookClient facebookClient = new DefaultFacebookClient(accessToken);

        String apprequestCall = "TARGET_USER_ID/apprequests";

        AppRequestResponse apprequest = facebookClient.publish(apprequestCall,
                                                               AppRequestResponse.class,
                                                               Parameter.with("message", "BANANAMSG"),
                                                               Parameter.with("data", "BANANADATA"));

        System.out.println(apprequest.request);
        System.out.println(apprequest.to);

    }

    /**
     * Couldn't find any beans that would acomodate this response on restfb so we create our own here
     * Looks like "to" is an array but this works well enough for the sake of the example 
     */
    public static class AppRequestResponse extends FacebookType
    {
        private static final long serialVersionUID = 1L;

        public AppRequestResponse()
        {
            // Empty
        }

        @Facebook
        public String request;

        @Facebook
        public String to;
    }
}
于 2011-11-22T10:23:44.253 に答える
0

http://developers.facebook.com/docs/reference/dialogs/requests/

上記のリンクで説明されているように、ダイアログを使用できます

于 2011-05-21T23:54:58.007 に答える