猿问

okhttp发送post返回的response.body().string()用equals值总是false,日志打印的字符串明明一样。

private void sentRequestWithOkHttpToLogin() {
   new Thread(new Runnable() {
       @Override
       public void run() {
           try {
           OkHttpClient client=new OkHttpClient();
           RequestBody requestBody=new FormBody.Builder()
                   .add("username",username)
                   .add("password",password)
                   .build();
           Request request=new Request.Builder()
                   .url(Login_url)
                   .post(requestBody)
                   .build();
           Response response= client.newCall(request).execute();
                responseData=response.body().string();
               responseData=responseData.toString();
             runOnUiThread(new Runnable() {
                 @Override
                 public void run() {
                     if(responseData.equals("success"))
                     {
                         Log.d("user12",responseData);
                         Toast.makeText(LoginActivity.this,"登录成功",Toast.LENGTH_SHORT).show();
                         UserFragment.login.setText(username);

                     }else if(responseData.equals("fail"))
                     {
                         Log.d("user12",responseData);
                         Toast.makeText(LoginActivity.this,"用户名密码不存在",Toast.LENGTH_SHORT).show();
                     }
                 }
             });
           } catch (IOException e) {
               e.printStackTrace();
           }

       }
   }).start();
}

慕姐5506514
浏览 2425回答 0
0回答
随时随地看视频慕课网APP

相关分类

Android
Java
我要回答