如何将调用< object>响应作为字符串处理?

0sgqnhkj  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(221)

我现在很困惑。当使用userdata发布新用户时,我的api返回一个登录令牌。如何将response.body()作为字符串保存?
它只返回一个post对象,而我并不真正想要它。我只使用它来创建帖子。

private void createPost(User user) {

        Post post = new Post(user.getName(), user.getGender(), user.getBirthyear(), user.getHeight(),user.getWeight());
        Call<Post> call = jsonmongo.createPost(post);
        // To execute it asynchron
        call.enqueue(new Callback<Post>() {
            @Override
            public void onResponse(Call<Post> call, Response<Post> response) {
                if (!response.isSuccessful()) {
                    Log.e("RESPONSECODE", ""+ response.code());
                    return;
                }                    
                Log.e("RESPONSECODE", ""+ response.code());
            }

            @Override
            public void onFailure(Call<Post> call, Throwable t) {
                Log.e("RESPONSECODE", ""+ t.getMessage());
            }
        });
    }

获取response.body并通过sql适配器()将其保存到数据库中 adapter.addToken(response.body()) ) response.body().toString 仅返回对象引用( com.example.Resources.Post@4c8352 )
String S = new Gson().toJson(response.body()) Log.e("JSON", S) 返回以下内容: E/JSON: {"age":0,"gender":0,"height":0,"weight":0} 想要的输出: E/JSON: {"token":aslfjkhr9RRRRf283FGr3489pjfGGG34HH89fj}

kxeu7u2r

kxeu7u2r1#

让我试试。。。您可以使用gson库从响应中创建一个stringjson对象。
试试看:

new Gson().toJson(response);

相关问题