Страницы

Поиск по вопросам

четверг, 30 мая 2019 г.

Android как сделать GET запрос

Мне при нажатии на кнопку в MainActivity надо запросить данные Есть специальный адрес по которому они лежать в json представлении
Мне кажется или в java все как то сложно?)
Права для интернета я указал. Все, с кодом проблемы)
URL url = new URL("http://hashcode.ru").openStream()
Тут подчеркивает красным строчку с адресом.... (((


Ответ

public static String doGet(String url) throws Exception {
URL obj = new URL(url); HttpURLConnection connection = (HttpURLConnection) obj.openConnection();
//add reuqest header connection.setRequestMethod("GET"); connection.setRequestProperty("User-Agent", "Mozilla/5.0" ); connection.setRequestProperty("Accept-Language", "en-US,en;q=0.5"); connection.setRequestProperty("Content-Type", "application/json");
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream())); String inputLine; StringBuffer response = new StringBuffer();
while ((inputLine = bufferedReader.readLine()) != null) { response.append(inputLine); } bufferedReader.close();
// print result Log.d(TAG,"Response string: " + response.toString());
return response.toString(); }
Использовать можно так:
new AsyncTask() { @Override protected String doInBackground(Void... voids) { String s = ""; try { s = doGet(myURL); } catch (Exception e) { e.printStackTrace(); } return s; }
@Override protected void onPostExecute(final String result) { runOnUiThread(new Runnable() { @Override public void run() { tvRez.setText(result); } }); } }.execute();

Комментариев нет:

Отправить комментарий