2

我第一次弄乱了 facebook graph api,遇到了一个其他人不会发生的问题。如果这是重复的,我很抱歉。

Bundle searchParams = new Bundle();
searchParams.putString("q", "coffee");
searchParams.putString("type", "place");

String response = facebook.request("search", searchParams);

在上面的代码中,我试图复制 facebook 在他们的开发者图形 api 页面上搜索咖啡场所的示例。发生的有趣的事情是当我传入 Bundle 时,我已经设置了这两个参数。

public String request(String graphPath, Bundle params, String httpMethod)
        throws FileNotFoundException, MalformedURLException, IOException {
    params.putString("format", "json");
    if (isSessionValid()) {
        params.putString(TOKEN, getAccessToken());
    }
    String url = (graphPath != null) ? GRAPH_BASE_URL + graphPath
                                     : RESTSERVER_URL;
    return Util.openUrl(url, httpMethod, params);
}

当我逐步执行 facebook 请求函数(见上图)时,我注意到我放入的第一个参数在放入 access_token 后从 Bundle 中弹出。这导致我的 Bundle 仅包含 {"type", "place"} ,以及 facebook 的参数。通过调试器,我注意到阈值设置为 3。我猜这是我的问题,但不知道如何或在哪里改变它。

有什么想法吗?

更新:我无法弄清楚我遇到的问题。但是在升级到 facebook sdk 3.0b 时能够做我需要的事情。谢谢。

4

1 回答 1

1

我可以做到这一点,我像这样调用请求函数。

String response = facebook.request("search", searchParams,"GET");
于 2012-10-19T14:43:56.783 回答