11 / 2 / 0
Регистрация: 20.07.2016
Сообщений: 35
1

Получить значение token из ответа сервера

26.07.2016, 09:46. Показов 1995. Ответов 3

Author24 — интернет-сервис помощи студентам
Добрый день, форумчане.
Сложился такой вопрос. Есть у нас ресурс, который возвращает данные вот в таком формате: del.

 Комментарий модератора 
Прикрепляйте изображения к посту


Собственно мне для работы требуется только то, что лежит в поле "token".

Беда в том, что я не знаю вообще:
1. Что это за формат.
2. Чем его читать.
3. Как из него вытащить нужное мне поле.

Пока наваял вот такой костыль, но сам понимаю, что это совсем не вариант и посыпется при любом чихе:
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
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util.ArrayList;
 
public class MorphologicalAnalyzer {
    
    StringBuilder sb = new StringBuilder();
    
    public String getInitialFormOfWord (String query){
        
        try {
            
            String query_utf = URLEncoder.encode(query, "UTF8");
            
            URL url = new URL("URL_РЕСУРСА" + query_utf);
            
            InputStream response = url.openStream();
            
            BufferedReader reader = new BufferedReader(new InputStreamReader(response, "UTF8"));
            
            ArrayList<String> arrSt = new ArrayList<>();
            for (int i = 0; i < 35; i ++){
                sb.append(reader.readLine());
                if ((i == 2) || ((i - 2) % 6) == 0){
                    sb.delete(0, 15);
                    for (int j = 0; j < sb.length(); j ++){
                        if (sb.charAt(j) == '"'){
                            sb.delete(j, sb.length());
                            arrSt.add(sb.toString());
                        }
                    }
                }
                sb.delete(0, sb.length());
            }
            for (String str : arrSt) sb.append(str + " ");
            query = sb.toString();
            
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e1) {
            e1.printStackTrace();
        }
        
        return sb.toString();
    }
 
}
Добавлено через 30 минут
P.S. Желательно из ответа значение поля "token" вытаскивать в String.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.07.2016, 09:46
Ответы с готовыми решениями:

Как получить код ответа сервера?
Нужно получить заголовок страницы. Что-то вроде: -задаем url страницы - получаем &quot;200&quot; или &quot;301&quot;...

Как получить код ответа сервера?
Есть какая нибудь функция, чтобы узнать код ответа? Типа даёшь урл, а он тебе возвращает 200, 404 и...

Выташить значение из ответа сервера
Как вытащить значение из ответа из сервера? ответ от сервера: &lt;response uid=&quot;847190&quot;...

Как с NodeJs или JavaScript получить код ответа сервера?
Есть какая нибудь функция, чтобы узнать код ответа? Типа даёшь урл, а он тебе возвращает 200, 404 и...

3
11 / 2 / 0
Регистрация: 20.07.2016
Сообщений: 35
26.07.2016, 09:52  [ТС] 2
Скрин
Миниатюры
Получить значение token из ответа сервера  
0
Эксперт Java
2398 / 2223 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
26.07.2016, 09:57 3
Лучший ответ Сообщение было отмечено Zelmm как решение

Решение

Zelmm, это json формат. Распарсить его есть множество вариантов
1
11 / 2 / 0
Регистрация: 20.07.2016
Сообщений: 35
26.07.2016, 13:41  [ТС] 4
KEKCoGEN, спасибо!
Нашел очень хороший мануал на русском.
К сожалению с техническим английским пока плохо.
0
26.07.2016, 13:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.07.2016, 13:41
Помогаю со студенческими работами здесь

Получить один элемент из многомерного массива при получении ответа от сервера
Получаю от сервера данные в формате JSON: data_xml = XML(event.target.data); trace(data_xml);...

Как получить и вывести код ответа сервера при запросах по протоколу HTTP?
Всем привет! Cкажите, плиз, как получить и вывести код ответа сервера при запросах по протоколу...

Получить значение ответа. JSON
Имеется ответ от сервера такого вида { &quot;status&quot; : &quot;success&quot;, &quot;data&quot; : { &quot;network&quot;...

Rest API авторизация token Код состояния ответа HTTP 422 (Unprocessable Entity)
Здравствуйте, помогите разобраться с авторизацией. Я раньше такого не делал, поэтому понятия не...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru