HTTP ANDROID CLUB 2015. Сегодня JSON GET запрос POST запрос.

18
HTTP ANDROID CLUB 2015

Transcript of HTTP ANDROID CLUB 2015. Сегодня JSON GET запрос POST запрос.

Page 1: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

HTTPANDROID CLUB 2015

Page 2: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

Сегодня

JSON GET запрос POST запрос

Page 3: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

JSON

Формат данных для обмена JavaScript Object Notation

Page 4: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

JSON vs XML

JSON: компактный JSON: читабельный XML: CDATA

Page 5: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

JSON объектпример

{

"id":1,

"firstname":"Joe",

"lastname":"Richard”

}

Page 6: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

JSON объектпрактика

Создавайте JSON объект для книги author: Фридрих Ницше title: Так говорил Заратустра year: 1885

Page 7: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

JSON массив: пример[

{

"id":1,

"firstname":"Joe",

"lastname":"Richard"

},

{

"id":2,

"firstname":"Kain",

"lastname":"Saridzawa"},

{

"id":3,

"firstname":"Otabek",

"lastname":"Rakhimov"

}

]

Page 8: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

JSON массивпрактика

Создавайте JSON массив из 3 объектов (книг)

3 ваших любимых книг

Page 9: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

Android Asynchronous Http Client

Основана на Apache HTTP Работает вне потока UI Компактная: 90kb GET, POST Instagram, Pinterest, Spotify

Page 10: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

GET vs POST

GET не меняет данные в сервере POST меняет данные в сервере

Page 11: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

GET запроспример

AsyncHttpClient client = new AsyncHttpClient();client.get("http://jsonip.com", new AsyncHttpResponseHandler() { @Override public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) { String json = new String(responseBody); TextView tvJson = (TextView) findViewById(R.id.tvJson); tvJson.setText(json); }

@Override public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {

}});

Page 12: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

GET запроспрактика

Получите данные: http://www.telize.com/geoip?callback=ваш ip адрес

Показывайте JSON в TextView

Page 13: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

GET запроспрактика 2

http://androidclub.uz/api/test/lessons/android.php

Показывайте JSON в TextView

Page 14: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

Разобрать JSONпример

1. POJO

2. Лист POJO

3. Layout

4. BaseAdapter

5. ListView

Page 15: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

Разобрать JSONпрактика

http://androidclub.uz/api/test/lessons/java.php Показывайте список уроков по Java в

ListView

Page 16: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

POST запроспример

RequestParams params = new RequestParams();params.add("title", "Test");params.add("description", "Будет тест");

AsyncHttpClient client = new AsyncHttpClient(); client.get("http://androidclub.uz/api/test/lessons/add_android.php", new AsyncHttpResponseHandler() { @Override public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) { String json = new String(responseBody); TextView tvJson = (TextView) findViewById(R.id.tvJson); tvJson.setText(json); }

@Override public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {

}});

Page 17: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

POST запроспрактика

http://androidclub.uz/api/test/lessons/add_java.php

Добавьте урока в лист уроков Java

Page 18: HTTP ANDROID CLUB 2015. Сегодня  JSON  GET запрос  POST запрос.

Домашнее задание

http://joerichard.net/api/tw/tw.json