ユーザーとパスワードが正しいかどうかを確認しようとしています。私はAPIを消費しています。これが私のコードです:
String username = user.getText().toString(), password = pass.getText().toString();
String URL = "MyUrl";
String authData = "Basic " + Base64.encodeToString((username + ":" + password).getBytes(), Base64.NO_WRAP);
HttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet(URL);
httpget.setHeader("Authorization", authData);
HttpResponse response = null;
try {
response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();
if (entity != null) {
String s = EntityUtils.toString(entity);
Toast.makeText(getBaseContext(), s, Toast.LENGTH_SHORT).show();
Intent i = new Intent(Login.this,DriverLogin.class);
startActivity(i);
finish();
}
else
Toast.makeText(getBaseContext(), "Fail", Toast.LENGTH_SHORT).show();
} catch (Exception e) {
// Auto-generated catch block
e.printStackTrace();
}
finally {
}
ユーザー名とパスワードが正しければ問題ありません。私の問題は、ユーザーが間違ったログイン資格情報を入力したときです。エンティティが null でないかどうかをチェックする行があります。私が観察したように、ログイン資格情報が正しいか間違っているかにかかわらず、この状態になります。正しい場合、必要な詳細が表示されます。間違っている場合は、詳細が承認されていないというメッセージが表示されます。ログイン資格情報が間違っていると言うために、そのメッセージをキャッチしたいと思います。詳細が間違っているとエンティティがnullになると思いました。何か案は?ありがとう!