自从2.4升级到Play 2.5以来,RequestBody在所有POST请求中都为空

时间:2016-04-08 20:25:16

标签: java android playframework playframework-2.5

我使用Retrofit 2从Android应用程序发送数据,一切正常,但自从将我的Pl​​ay项目提升到v2.5以利用JPAApi后,我的API中收到的任何请求正文都为空。下面是一个示例控制器,我遇到了这个问题。

    @Transactional
    @BodyParser.Of(BodyParser.Json.class)
    @AddCSRFToken
    public Result register() {
        if (request().body() == null) {
            return badRequest();
        }

        JsonNode json = request().body().asJson();

        String email = json.path("email").asText();
        String password = json.path("password").asText();

        if (repo.findByEmail(email) != null) {
            return status(CONFLICT);
        }

        User user = new User(email, hashPassword(password));
        String authToken = user.createAuthToken();
        response().setCookie(AUTH_TOKEN, authToken);
        return ok(Json.toJson(repo.insert(user)));
    }

0 个答案:

没有答案