Я использую модификацию для аутентификации пользователя, но при вводе неправильного ввода код ответа 200 и начинается следующее действие.
public void serverLogin(){
// Create handle for the RetrofitInstance interface
apiInterface = RetrofitInstance.getRetrofitInstance().create(APIInterface.class);
UserModel userModel = new UserModel();
userModel.setUsername(username);
userModel.setPassword(password);
Call<IDModel> activate = apiInterface.userLogin(userModel);
activate.enqueue(new Callback<IDModel>() {
@Override
public void onResponse(Call<IDModel> call, Response<IDModel> response) {
if (response.isSuccessful()) {
int statusCode = response.code();
response.body();
customerID = response.body().getCustomer_id();
subID = response.body().getSub_id();
idDB.addCustomerID(customerID, subID);
session.setLoggedIn(true);
Intent intent = new Intent(Login.this, Drawer.class);
intent.putExtra("cusID", customerID);
startActivity(intent);
Toast.makeText(Login.this, "SUCCESS", Toast.LENGTH_SHORT).show();
Log.d("onresponse", "" + statusCode);
}
else {
Toast.makeText(Login.this, "Login failed", Toast.LENGTH_SHORT).show();
}
}
@Override
public void onFailure(Call<IDModel> call, Throwable t) {
Toast.makeText(Login.this, "" + t.getMessage(), Toast.LENGTH_SHORT).show();
Log.d("onfailure"," " + t . getMessage());
}
});
}
Остальная часть всегда пропускается. Когда это не удается, я хочу уведомить пользователя и не начинать следующее действие.