android - 即使输入错误,Retrofit 也会返回 200 并开始下一个活动
问题描述
我正在使用改造来验证用户身份,但是当输入错误时,响应代码为 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());
}
});
}
else 部分总是被跳过。当它不成功时,我想通知用户而不是开始下一个活动。
解决方案
推荐阅读
- javascript - 如何更改所有 AJAX 请求以从 cookie 添加令牌标头
- laravel - Laravel 字体扩展验证
- javascript - jQuery 根据输入设置和触发选项值
- php - 如何从我单击的任务中获取 id
- python - 在使用列表推导生成素数时使用 `all()` 函数
- google-chrome-extension - 每次使用弹出窗口时显示一个新链接
- uwp - 鼠标和键盘滞后于新部署的 UWP 应用
- angular - 将传入的整数值绑定到表单组中的 mat-radio-button 值
- java - 未检测到 Java KeyPress
- .net - ASP.NET MVC - 不能在 Foreach 循环中使用 HTML Raw