Можете подсказать , мне надо понять и научиться как написать POST запрос на сервером (https://inecopay.ru/inecogate/doc/dist/index.html?url=https://inecopay.ru/inecogate/doc/inecogate_api.json#/) 1. при нажатие на кнопку вход, надо отправить запрос на сервер и получить ответ
вот код , я получаю данные, но вопрос в том что мне надо получить код от responseCode и на ответе сделать действие , но почему то не я получаю responseCode только тогда кода нажимаю 2 раз на ту же кнопку , не понимаю где ошибка , можете объяснить как сделать чтобы responseCode сразу я получал
public void onVxodClick(View view) {
ExecutorService service = Executors.newCachedThreadPool();
log = login.getText().toString();
pas = pass.getText().toString();
service.submit(new Runnable() {
@Override
public void run() {
try {
BufferedReader reader = null;
URL url = new URL("https://inecopay.ru/inecogate/rest/api/v1.0/api/login");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setReadTimeout(10000);
connection.setRequestMethod("POST");
connection.setConnectTimeout(15000);
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
connection.setDoInput(true);
connection.setDoOutput(true);
Uri.Builder builder = new Uri.Builder()
.appendQueryParameter("login", log)
.appendQueryParameter("password", pas);
String query = builder.build().getEncodedQuery();
DataOutputStream wr = new DataOutputStream(connection.getOutputStream());
wr.writeBytes(query);
wr.flush();
wr.close();
connection.connect();
reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
StringBuilder buf = new StringBuilder();
String line = null;
code = connection.getResponseCode();
while ((line = reader.readLine()) != null) {
buf.append(line + "\n");
}
str = (buf.toString());
Log.d("happy", "Данные на сервере" + str + "code = " + code);
} catch (MalformedInputException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
content.setText( str );
}
});
scanUser(code);
}
private void scanUser(int codee) {
if(codee == 200){
Intent intent = new Intent(this, MainAccaunt.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
}else if (codee == 400) {
Toast.makeText(this, "Не заданы все обязательные параметры", Toast.LENGTH_SHORT).show();
}else if (codee == 401) {
Toast.makeText(this, "Неправильный логин или пароль", Toast.LENGTH_SHORT).show();
}else if (codee == 402) {
Toast.makeText(this, "e-Mail еще не прошел валидацию", Toast.LENGTH_SHORT).show();
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имею приложение2 EditText, один - поле ввода текста в utf, второй - вывод преобразованного текста в формате \uXXXX\uXXXX\uXXXX Я ввожу: "Привет", а в ответ должен...