(#803) 您请求的某些别名不存在:{education-experience-id} Android

(#803) Some of the aliases you requested do not exist: {education-experience-id} Android

我正在尝试从 facebook 获取用户的教育详情和工作描述。我成功登录并获得访问令牌。但是我无法得到我想要的细节

我正在使用的代码:-

    public void getUserExpandEducation() {

    new GraphRequest(
            AccessToken.getCurrentAccessToken(),
        "/{education-experience-id}",  //"/{user_education_history}",//  
            null,
            HttpMethod.GET,
            new GraphRequest.Callback() {
                public void onCompleted(GraphResponse response) {
                    Log.d("fb response",response.toString());
                }
            }
    ).executeAsync();
}

谁能回复一下

I am getting error (#803) Some of the aliases you requested do not exist: {education-experience-id}

确保您已授权该权限:user_education_history

API 调用以获取教育 ID 列表:https://developers.facebook.com/tools/explorer/?method=GET&path=me%3Ffields%3Deducation

在您的代码中,您需要将以下字符串替换为生成的教育 ID 之一:{education-experience-id}

例如:

new GraphRequest(
    AccessToken.getCurrentAccessToken(),
    "/12345",
        null,
        HttpMethod.GET,
        new GraphRequest.Callback() {
            public void onCompleted(GraphResponse response) {
                Log.d("fb response",response.toString());
            }
        }
).executeAsync();

最后我通过这段代码得到了完整的工作和教育细节:

GraphRequest request = GraphRequest.newMeRequest(
            accessToken,
            new GraphRequest.GraphJSONObjectCallback() {
                @Override
                public void onCompleted(
                        JSONObject object,
                        GraphResponse response) {

                    FirstNameSocial = object.optString("first_name");
                    LastNameSocial = object.optString("last_name");
                    GenderSocial = object.optString("gender");
                    EmailSocial = object.optString("email", "");
                    id = object.optString("id");


                    if (!EmailSocial.equals("")) {
                        login_type = Config.Login_Type_facebook;
                        callAPI(EmailSocial, id, "");

                    } else {
                        Toast.makeText(getApplicationContext(), "Permision Denied", Toast.LENGTH_LONG)
                                .show();
                    }

                }
            });

    Bundle parameters = new Bundle();
    parameters.putString("fields", "id,name,email,birthday,gender,first_name,last_name,picture,education,work");
    request.setParameters(parameters);
    request.executeAsync();

可能会对某人有所帮助! 编码愉快:)