2

ログインしたユーザーが招待されたイベントを取得しようとしています。いくつかのことをテストしているときに、次の FQL クエリを試しているときにこのエラーが発生しました。

public static List<GraphLocation> getEvents(Session session, Map<String, Object> queryParams){
    limpar();

    queryStringBuilder.append("SELECT eid, all_members_count, attending_count, declined_count, description, end_time, version, " +
                                     "name, location, pic, privacy, start_time, ticket_uri, timezone, unsure_count, venue " +
                              "FROM event");

    if(queryParams != null && !queryParams.isEmpty()){
        whereClause.append(" WHERE ");

        if(!queryParams.containsKey("dataInicio")){
            whereClause.append("start_time = " + formatter.format((Date) queryParams.get("dataInicio")));
        }
    }

    queryStringBuilder.append(whereClause.toString());

    Bundle params = new Bundle();
    params.putString("q", queryStringBuilder.toString());

    Request request = new Request(session, "/fql",  params, HttpMethod.GET, 
            new Request.Callback() {

                @Override
                public void onCompleted(Response response) {
                    System.out.println(response.toString());
                }
            });

    Request.executeBatchAsync(request);

    return null;
}
private static void limpar(){
    queryStringBuilder = new StringBuilder();
    whereClause = new StringBuilder();
}

imageshack の画像エラーへのリンクは次のとおりです: http://img163.imageshack.us/img163/6848/erroew.png

誰かがなぜその問題が起こっているのかを教えてくれれば、私はとても幸せです.

どうもありがとう。

4

1 に答える 1

1

FQL クエリには WHERE ステートメントが必要です。これが「クエリの予期しない終了」例外の原因です。

あなたが探しているクエリはこれです

SELECT eid, all_members_count, attending_count, declined_count, description, end_time, version, name, location, pic, privacy, start_time, ticket_uri, timezone, unsure_count, venue 
                FROM event WHERE eid IN ( SELECT eid FROM event_member WHERE uid = XXXXXXX ) 
                ORDER BY start_time asc

XXXXXXX を Facebook のユーザー ID に置き換えます。

コードに統合する前に FQL クエリをテストするには、こちらのように Facebook Graph API Explorer を使用できます。

注: Facebook アプリに「user_events」権限を追加することを忘れないでください。

于 2013-05-28T22:35:03.163 に答える