如何发送邀请以使用具有 Graph API 的应用程序?我看了参考,找不到合适的东西。有什么线索吗?
10842 次
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,正如我从你的标签中得到的,你可以试试这个:
这是一个自包含的 junit 测试,它检索身份验证令牌并发布一个 apprequest。不需要用户生成的 auth_token,但您只能将这样的应用请求发送给已经授权您的应用的用户。
依赖项是 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 回答