Java 无法获取改装2响应正文

Java 无法获取改装2响应正文,java,android,client-server,retrofit,Java,Android,Client Server,Retrofit,我有一个带有mongo、express和node的服务器 我正在尝试通过用户名在此处获取用户数据: myip/users/name/example\u name 其中,示例_名称是一个参数 这是我的密码: 主要活动: @BindView(R.id.btnTest) Button btnTest; @BindView(R.id.tvTest) TextView tvTest; @OnClick(R.id.btnTest) void changeText(){ GitHubService

我有一个带有mongo、express和node的服务器 我正在尝试通过用户名在此处获取用户数据:
myip/users/name/example\u name

其中,示例_名称是一个参数

这是我的密码:

主要活动:

@BindView(R.id.btnTest)
Button btnTest;
@BindView(R.id.tvTest)
TextView tvTest;

@OnClick(R.id.btnTest) void changeText(){
    GitHubService gitHubService = GitHubService.retrofit.create(GitHubService.class);
    final Call<User> call =
            gitHubService.getUser("dolev");

    call.enqueue(new Callback<User>() {
        @Override
        public void onResponse(Call<User> call, Response<User> response) {
            Toast.makeText(MainActivity.this,"This: " +  response.body().getName(), Toast.LENGTH_SHORT).show();
            tvTest.setText("response success," + response.body().toString());
        }
        @Override
        public void onFailure(Call<User> call, Throwable t) {
            tvTest.setText("Something went wrong: " + t.getMessage());
        }
    });
}

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ButterKnife.bind(this);

}

@Override
public void onResponse(Call<User> call, Response<User> response) {
    int code = response.code();
    if (code == 200) {
        User user = response.body();
        Log.v("FETCH", response.body().getEmail());
        Toast.makeText(this, "Got the user: " + user.getName(), Toast.LENGTH_LONG).show();
    } else {
        Toast.makeText(this, "Did not work: " + String.valueOf(code), Toast.LENGTH_LONG).show();
    }
}

@Override
public void onFailure(Call<User> call, Throwable t) {
    Toast.makeText(this, "Nope", Toast.LENGTH_LONG).show();

}
@BindView(R.id.btnTest)
按钮测试;
@BindView(R.id.tvTest)
文本视图测试;
@OnClick(R.id.btnTest)void changeText(){
GitHubService GitHubService=GitHubService.reformation.create(GitHubService.class);
最后的电话=
gitHubService.getUser(“dolev”);
call.enqueue(新回调(){
@凌驾
公共void onResponse(调用、响应){
Toast.makeText(MainActivity.this,“this:+response.body().getName(),Toast.LENGTH_SHORT).show();
tvetest.setText(“响应成功,+response.body().toString());
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
tvetest.setText(“出错:+t.getMessage());
}
});
}
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
把(这个)绑起来;
}
@凌驾
公共void onResponse(调用、响应){
int code=response.code();
如果(代码==200){
User=response.body();
Log.v(“FETCH”,response.body().getEmail());
Toast.makeText(这个“得到了用户:”+user.getName(),Toast.LENGTH\u LONG.show();
}否则{
Toast.makeText(此“无效:”+String.valueOf(代码),Toast.LENGTH_LONG.show();
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
Toast.makeText(这个“不”,Toast.LENGTH_LONG).show();
}
GitHubService:

public interface GitHubService {



@GET("users/name/{username}")
Call<User> getUser(@Path("username") String username);

@GET("users}")
Call<List<User>> getAllUsers();





public static final Retrofit retrofit = new Retrofit.Builder()
        .baseUrl(Global.API)
        .addConverterFactory(GsonConverterFactory.create())
        .build();
公共接口服务{
@获取(“users/name/{username}”)
调用getUser(@Path(“username”)字符串username);
@获取(“用户}”)
调用getAllUsers();
公共静态最终改装改装=新改装.Builder()
.baseUrl(Global.API)
.addConverterFactory(GsonConverterFactory.create())
.build();
}

用户类别:

package com.noy.photobomb.model;

import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;

import java.util.ArrayList;
import java.util.List;

import javax.annotation.Generated;

@Generated("org.jsonschema2pojo")
public class User {


    @SerializedName("_id")
    @Expose
    private String id;
    @SerializedName("isBanned")
    @Expose
    private Boolean isBanned;
    @SerializedName("users_followers")
    @Expose
    private List<Object> usersFollowers = new ArrayList<Object>();
    @SerializedName("__v")
    @Expose
    private Integer v;
    @SerializedName("followers")
    @Expose
    private List<Object> followers = new ArrayList<Object>();
    @SerializedName("groups")
    @Expose
    private List<Object> groups = new ArrayList<Object>();
    @SerializedName("phoneNumber")
    @Expose
    private String phoneNumber;
    @SerializedName("name")
    @Expose
    private String name;
    @SerializedName("email")
    @Expose
    private String email;


    private String login;

    public String getLogin() {
        return login;
    }
    /**
     *
     * @return
     * The id
     */
    public String getId() {
        return id;
    }

    /**
     *
     * @param id
     * The _id
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     *
     * @return
     * The isBanned
     */
    public Boolean getIsBanned() {
        return isBanned;
    }

    /**
     *
     * @param isBanned
     * The isBanned
     */
    public void setIsBanned(Boolean isBanned) {
        this.isBanned = isBanned;
    }

    /**
     *
     * @return
     * The usersFollowers
     */
    public List<Object> getUsersFollowers() {
        return usersFollowers;
    }

    /**
     *
     * @param usersFollowers
     * The users_followers
     */
    public void setUsersFollowers(List<Object> usersFollowers) {
        this.usersFollowers = usersFollowers;
    }

    /**
     *
     * @return
     * The v
     */
    public Integer getV() {
        return v;
    }

    /**
     *
     * @param v
     * The __v
     */
    public void setV(Integer v) {
        this.v = v;
    }

    /**
     *
     * @return
     * The followers
     */
    public List<Object> getFollowers() {
        return followers;
    }

    /**
     *
     * @param followers
     * The followers
     */
    public void setFollowers(List<Object> followers) {
        this.followers = followers;
    }

    /**
     *
     * @return
     * The groups
     */
    public List<Object> getGroups() {
        return groups;
    }

    /**
     *
     * @param groups
     * The groups
     */
    public void setGroups(List<Object> groups) {
        this.groups = groups;
    }

    /**
     *
     * @return
     * The phoneNumber
     */
    public String getPhoneNumber() {
        return phoneNumber;
    }

    /**
     *
     * @param phoneNumber
     * The phoneNumber
     */
    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    /**
     *
     * @return
     * The name
     */
    public String getName() {
        return name;
    }

    /**
     *
     * @param name
     * The name
     */
    public void setName(String name) {
        this.name = name;
    }

    /**
     *
     * @return
     * The email
     */
    public String getEmail() {
        return email;
    }

    /**
     *
     * @param email
     * The email
     */
    public void setEmail(String email) {
        this.email = email;
    }

}
package com.noy.photobomb.model;
导入com.google.gson.annotations.Expose;
导入com.google.gson.annotations.SerializedName;
导入java.util.ArrayList;
导入java.util.List;
导入javax.annotation.Generated;
@生成(“org.jsonschema2pojo”)
公共类用户{
@SerializedName(“\u id”)
@暴露
私有字符串id;
@序列化名称(“被禁止”)
@暴露
禁止私隐;
@SerializedName(“用户\追随者”)
@暴露
私有列表用户followers=new ArrayList();
@序列化名称(“_v”)
@暴露
私有整数v;
@序列化名称(“追随者”)
@暴露
private List followers=new ArrayList();
@序列化名称(“组”)
@暴露
私有列表组=新的ArrayList();
@SerializedName(“电话号码”)
@暴露
私有字符串电话号码;
@序列化名称(“名称”)
@暴露
私有字符串名称;
@序列化名称(“电子邮件”)
@暴露
私人字符串电子邮件;
私有字符串登录;
公共字符串getLogin(){
返回登录;
}
/**
*
*@返回
*身份证
*/
公共字符串getId(){
返回id;
}
/**
*
*@param-id
*身份证
*/
公共无效集合id(字符串id){
this.id=id;
}
/**
*
*@返回
*禁赛
*/
公共布尔getisbanked(){
禁止退货;
}
/**
*
*@param是被禁止的
*禁赛
*/
public void setisbanked(布尔值isbanked){
this.isbanked=isbanked;
}
/**
*
*@返回
*以下用户
*/
公共列表getUsersFollowers(){
返回以下用户;
}
/**
*
*@param usersFollowers
*用户和追随者
*/
公共无效设置用户权限(列出用户权限){
this.usersFollowers=usersFollowers;
}
/**
*
*@返回
*v
*/
公共整数getV(){
返回v;
}
/**
*
*@param v
*这个
*/
公共void setV(整数v){
这个,v=v;
}
/**
*
*@返回
*追随者
*/
公共列表getFollowers(){
回归追随者;
}
/**
*
*@param追随者
*追随者
*/
public void setFollowers(列出followers){
this.followers=追随者;
}
/**
*
*@返回
*团体
*/
公共列表getGroups(){
返回组;
}
/**
*
*@param组
*团体
*/
公共void集合组(列表组){
这个组=组;
}
/**
*
*@返回
*电话号码
*/
公共字符串getPhoneNumber(){
返回电话号码;
}
/**
*
*@param phoneNumber
*电话号码
*/
public void setPhoneNumber(字符串phoneNumber){
this.phoneNumber=电话号码;
}
/**
*
*@返回
*名字
*/
公共字符串getName(){
返回名称;
}
/**
*
*@param name
*名字
*/
公共void集合名(字符串名){
this.name=名称;
}
/**
*
*@返回
*电子邮件
*/
公共字符串getEmail(){
回复邮件;
}
/**
*
*@param电子邮件
*电子邮件
*/
公用电子邮件(字符串电子邮件){
this.email=电子邮件;
}
}
当我试图获取JSON数据时,响应主体为空,例如名称、id、电子邮件等。。 response.body().toString()为我提供了以下结果: @59285 而且数字也变了。。 我的意思是,我得到了身体 类com.noy.photobomb.model。User@84593 而@后的数字每次点击都会改变。 我从早上开始就在做这件事,我已经搜索了很多关于StackOverFlow的教程和错误,但是我没有找到错误