HTTP-ответ, используемый для входа, не работает - PullRequest
0 голосов
/ 16 апреля 2020

Я новичок в android, и сейчас мы работаем над университетским проектом. Приложение используется для клиентов, чтобы войти в приложение и просматривать информацию об их статусах транспортных средств, когда они хранят свои автомобили в гараже, чтобы что-то починить. Другие члены группы создали API с использованием ASP. NET, и мне нужно создать приложение android для регистрации новых пользователей, входа в систему и просмотра информации о счетах и ​​транспортных средствах.

Они сделали несколько веб-сервисы, такие как;

GetCustomerDetailsForMobile (используются два параметра, электронная почта и пароль), Mobile_GetAllCustomers (извлекает весь JSON запрос сведений о клиенте)

Ответ, который я получаю при использовании сервис GetCustomerDetailsForMobile, и когда я передаю правильные учетные данные, "TRUE". Когда учетные данные неверны, я получаю ответ «ЛОЖЬ».

Поскольку у меня нет никаких знаний об HTTP-запросах, я попробовал все, но потерпел неудачу из-за отсутствия понимания. Я наконец попытался войти в систему пользователей, используя их электронную почту и пароль, как это.

public class MainActivity extends AppCompatActivity {

String emailStr, passwordStr;

EditText email, password, 
Button login;
TextInputLayout txtInLayoutEmail, txtInLayoutPassword, txtInLayoutRegPassword;
CheckBox rememberMe;
private StringRequest request;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    email = findViewById(R.id.email);
    password = findViewById(R.id.password);
    login = findViewById(R.id.login);
    signUp = findViewById(R.id.signUp);
    txtInLayoutEmail = findViewById(R.id.txtInLayoutEmail);
    txtInLayoutPassword = findViewById(R.id.txtInLayoutPassword);
    rememberMe = findViewById(R.id.rememberMe);

    emailStr = email.getText().toString();
    passwordStr = password.getText().toString();


    final RequestQueue requestQueue = Volley.newRequestQueue(this);

    login.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            AsyncHttpClient asyncHttpClient=new AsyncHttpClient();
            RequestParams params=new RequestParams();
            params.put("CUST_EMAIL", emailStr);
            params.put("CUST_PASSWORD", passwordStr);
            asyncHttpClient.post("http://192.168.8.101/DIVSS%20ENGINE/DivssService.asmx/GetCustomerDetailsForMobile", params,new AsyncHttpResponseHandler(){
                @Override
                public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
                    if(responseBody.equals("TRUE")){
                        startActivity(new Intent(getApplicationContext(), HomeActivity.class));
                    }
                }

                @Override
                public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
                    if(responseBody.equals("FALSE")){
                        startActivity(new Intent(getApplicationContext(), HomeActivity.class));
                    }
                }

            });

        }


    });
   }
}

Когда я запускаю приложение и когда я ввожу учетные данные пользователя, в LOGCAT я получаю V / AsyncHttpRH: Progress 319 из 319 (100%)

Я не знаю, как это исправить или кого-либо просить. Спасибо

...