Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Slavik3
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 22
#1

Не получается получить json - Программирование Android

31.12.2013, 02:02. Просмотров 1080. Ответов 5
Метки нет (Все метки)

Пытаюсь получить json строку с http://217.12.194.171:31/server/api/users/getusers
Использую для примера http://www.learn2crack.com/2013/10/a...l-example.html
Выдает ошибку, точнее пишит там где я вывожу строку(для проверки) the requested resource does not support http method 'post'.
Это не помогло http://stackoverflow.com/questions/1...ort-http-metho
кто что может посоветовать?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.12.2013, 02:02
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не получается получить json (Программирование Android):

Получить json - Программирование Android
Здравствуйте. Мне нужно получить следующий json ответ с моего сайта для мобильного приложения. ...

Не могу получить json по https - Программирование Android
Доброго времени суток не могу получить json по https коннект проходит package com.devcolibri.parser; import...

Получить json в ответ на POST запрос - Программирование Android
Никак не могу добиться получения json с помощью вывода его через echo в PHP скрипте. Если перенаправлять запрос на файл .json, то всё...

Послать POST запрос с параметрами и получить json - Программирование Android
Всем привет! Столкнулся с проблемой. Как послать POST запрос и получить назад результат json. Опишу подробно: Есть апи сайта, на...

Получить json в приложении и вывести его в listview во фрагмент - Программирование Android
Здравствуйте, у меня такая проблема не могу разобраться как получить json в приложение и вывести его в listview во фрагмент.

Не получается получить координаты с GPS - Программирование Android
Почему у меня "вылетает" приложение, когда я пытаюсь получить координаты с GPS. Если что в коде я пометил комментарием где ошибка вылетает,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
31.12.2013, 17:13 #2
Slavik3, во-первых, не могу понять почему post, если это явно get. Вот Вам рабочий парсер Вашего запроса.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import android.util.Log;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
 
import java.io.IOException;
import java.net.URI;
 
public class Worker {
 
    public static final String TAG = Worker.class.getSimpleName();
 
    public void doRequest() throws IOException {
        HttpClient httpClient = new DefaultHttpClient();
        HttpGet httpGet = new HttpGet(URI.create("http://217.12.194.171:31/server/api/users/getusers"));
        HttpResponse httpResponse = httpClient.execute(httpGet);
        String sResponse = EntityUtils.toString(httpResponse.getEntity());
        try {
            JSONObject rootJson = new JSONArray(sResponse).getJSONObject(0);
            l(rootJson.getString("$id"));
            l(rootJson.getString("UserId"));
            l(rootJson.getString("Name"));
            l(rootJson.getString("City"));
            l(rootJson.getString("Country"));
            l(rootJson.getString("SumDistance"));
            l(rootJson.getString("Nickname"));
 
            JSONArray tripsArray = rootJson.getJSONArray("Trips");
            for (int i = 0; i < tripsArray.length(); i++) {
                JSONObject currentInnerJson = tripsArray.getJSONObject(i);
                if (currentInnerJson.has("$ref")) {
                    l(currentInnerJson.getString("$ref"));
                    continue;
                }
                l(currentInnerJson.getString("$id"));
                l(currentInnerJson.getJSONObject("User"));             //Parse inner json here
                l(currentInnerJson.getJSONObject("Transport"));        //Parse inner json here
                l(currentInnerJson.getString("Id"));
                l(currentInnerJson.getString("StartCity"));
                l(currentInnerJson.getString("FinishCity"));
                l(currentInnerJson.getString("Distance"));
                l(currentInnerJson.getString("Comment"));
                l(currentInnerJson.getString("Image"));
                l(currentInnerJson.getString("DateTravel"));
                l(currentInnerJson.getString("UserId"));
                l(currentInnerJson.getString("TransportId"));
 
            }
 
 
        } catch (JSONException e) {
            e.printStackTrace();
        }
 
    }
 
    void l(JSONObject message) {
        Log.d(TAG, message == null ? "null" : message.toString());
    }
 
    void l(String message) {
        Log.d(TAG, message == null ? "null" : message);
    }
 
}
запуск:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class MyActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    new Worker().doRequest();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }).start();
    }
}
1
Slavik3
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 22
01.01.2014, 17:29  [ТС] #3
YuraAAA, огромное спасибо. подскажите пожалуйста как мне вывести результат
0
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
01.01.2014, 17:31 #4
Slavik3, а куда Вам надо его вывести?) Сейчас он выводит всё в лог. Но этот парсер не полный, почти полный. Я просто показал пример.
0
Slavik3
0 / 0 / 0
Регистрация: 22.09.2013
Сообщений: 22
01.01.2014, 17:37  [ТС] #5
YuraAAA, на экран. а чего там не хватает?
0
YuraAAA
1574 / 1316 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
01.01.2014, 17:50 #6
Ну как минимум,
Java
1
2
l(currentInnerJson.getJSONObject("User"));             //Parse inner json here
l(currentInnerJson.getJSONObject("Transport"));        //Parse inner json here
надо парсить дальше. Вам стоит разбираться самому.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.01.2014, 17:50
Привет! Вот еще темы с ответами:

Не получается получить путь к карте памяти - Программирование Android
Всем привет. У меня вот такой вопрос: storage/sdcard0 это путь к памяти телефона storage/sdcard1 это собственно карта памяти. ...

Ошибка - Errororg.json.JSONExceprion: Value bd.json of type java.lang.String cannot be converted to JSONObject - Программирование Android
Здравствуйте! Есть база данных bd.json, которая находится в проекте в папке assets. Вот содержимое базы данных; { &quot;name&quot;:...

Получить JSON и передать все его параметры его в Intent. Использован автофильтр - Программирование Android
Всем привет. Я тут запутался, помогите разобраться. Стоит задача выполнить такой функционал: получить данные JSON, один из параметров...

Не получается получить json от yandex - PHP
Помогите кто чем сможет плиз... Есть ресурс такой api.lbs.yandex.net/geolocation. Мне нужно отправить post запрос в формате json и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.01.2014, 17:50
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru