Я пытаюсь получить токен пользователя с помощью Retrofit, но когда я выполняю обратный вызов, он не входит в функцию onResponse
. Модель данных верна, потому что она работает для меня при входе и регистрации с тем же ответом в Почтальоне. Точно так же ответ хорошо работает в Почтальоне
Это класс APIService
, я посылаю идентификатор по параметру в URL:
@GET("user/uno/{api_token}")
Call<LoginResponse> getUserByToken(@Path("api_token") String api_token);
Это обратный вызов функция:
private void getUser(String api_token){
Call<LoginResponse> call = APIService.getUserByToken(api_token);
call.enqueue(new Callback<LoginResponse>() {
@Override
public void onResponse(Call<LoginResponse> call, Response<LoginResponse> response) {
loginResponse = response.body();
if(response.isSuccessful()) {
Log.d("GET API TOKEN USER MAIN", response.body().getUser().getApitoken());
}
}
@Override
public void onFailure(Call<LoginResponse> call, Throwable t) {
Log.d("Error", "Error");
}
});
}
И это kHttp. Там написано:
D/OkHttp: --> GET http://111.111.11.1/trabajos/api-manager-karate/karate-manager-api-laravel/public/api/user/uno/3c044a68e44e5890fac03545b2c37e7c4500c6baf9f28954cbf533902607e0f6
2020-04-17 12:07:19.152 10155-10218/com.example.karate_manager D/OkHttp: --> END GET
2020-04-17 12:07:19.290 10155-10218/com.example.karate_manager D/OkHttp: <-- 404 Not Found http://111.111.11.1/trabajos/api-manager-karate/karate-manager-api-laravel/public/api/user/uno/3c044a68e44e5890fac03545b2c37e7c4500c6baf9f28954cbf533902607e0f6 (137ms)
2020-04-17 12:07:19.290 10155-10218/com.example.karate_manager D/OkHttp: Date: Fri, 17 Apr 2020 10:07:19 GMT
Это запрос почтальона:
{
"code": 200,
"user": [
{
"id": 17,
"email": "hulk@gmail.com",
"name": "Hulk",
"api_token": "3c044a68e44e5890fac03545b2c37e7c4500c6baf9f28954cbf533902607e0f6",
"admin_user": 0,
"active": 1,
"photo_profile": null,
"email_verified_at": null,
"created_at": "2020-04-17T10:01:41.000000Z",
"updated_at": "2020-04-17T10:01:41.000000Z"
}
],
"msg": "User created"
}
Класс LoginResponse и класс User:
public class LoginResponse {
public LoginResponse(float code, User user, String msg) {
this.code = code;
this.user = user;
this.msg = msg;
}
public float getCode() {
return code;
}
public User getUser() {
return user;
}
public String getMsg() {
return msg;
}
private float code;
private User user;
private String msg;
}
public class User {
public User(float id, String email, String name, String api_token, float admin_user, float active, String photo_profile, String email_verified_at, String created_at, String updated_at) {
this.id = id;
this.email = email;
this.name = name;
this.api_token = api_token;
this.admin_user = admin_user;
this.active = active;
this.photo_profile = photo_profile;
this.email_verified_at = email_verified_at;
this.created_at = created_at;
this.updated_at = updated_at;
}
@SerializedName("id")
private float id;
@SerializedName("email")
private String email;
@SerializedName("name")
private String name;
@SerializedName("api_token")
private String api_token;
@SerializedName("admin_user")
private float admin_user;
@SerializedName("active")
private float active;
@SerializedName("photo_profile")
private String photo_profile = null;
@SerializedName("email_verified_at")
private String email_verified_at = null;
@SerializedName("created_at")
private String created_at;
@SerializedName("updated_at")
private String updated_at;
public float getId() {
return id;
}
public String getEmail() {
return email;
}
public String getName() {
return name;
}
public String getApitoken() {
return api_token;
}
public float getAdmin_user() {
return admin_user;
}
public float getActive() {
return active;
}
public String getPhoto_profile() {
return photo_profile;
}
public String getEmail_verified_at() {
return email_verified_at;
}
public String getCreated_at() {
return created_at;
}
public String getUpdated_at() {
return updated_at;
}
}