端点方法不起作用,为什么?

Endpoints method not working, why?

当我在 api 资源管理器中测试我的 google 端点 API 时,saveProfile 方法抛出 503 Service Unavailable 错误,但所有其他方法都工作正常。

这是我端点中的 saveProfile 方法:

@ApiMethod(name = "saveProfile")
public Profile saveProfile(final ProfileForm profileForm) {
    String firstName = profileForm.getFirstName();
    String lastName = profileForm.getLastName();
    String email = profileForm.getEmail();

    Profile profile = new Profile("124234132", email, firstName, lastName);

    ofy().save().entity(profile).now();

    return profile;
}

这是个人资料实体 class:

@Entity
public class Profile {

    @Id
    private String userId;

    private String email;

    private String firstName;

    private String lastName;

    public Profile(String userId, String email, String firstName, String lastName) {
        this.userId = userId;
        this.email = email;
        this.firstName = firstName;
        this.lastName = lastName;
    }
}

这里是 profileForm class:

public class ProfileForm {

    private String firstName;

    private String lastName;

    private String email;

    public ProfileForm() {}

    public ProfileForm(String firstName, String lastName, String email) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.email = email;
    }

    public String getFirstName() {
        return firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public String getEmail() {
        return email;
    }
}

我已经注册了实体并设置了 API_EXPLORER_CLIENT_ID 以及网络和 android 客户端 ID。

有人知道如何解决这个问题,以便该方法只是 returns 配置文件对象吗?

为了使配置文件可序列化,您需要为其每个字段定义 getter 和 setter(例如 getUserId()、setUserId(string Id))。

Objectify 实体还必须包含无参数构造函数:https://github.com/objectify/objectify/wiki/Entities

让我知道是否修复了错误。