Так что мне нужно выяснить, как получить доступ к значению, которое я получаю от своего первого ответа в секунду. Я бы подумал, что я могу просто сохранить его в переменной и получить доступ к нему в другом запросе. Однако, похоже, это не так.Доступ к OKHttp Response Body
Вот немного, что дает мне проблемы. Поэтому мой первый запрос получает мне токен, а затем мне нужно использовать то, что хранится в commatoken в моем втором запросе.
private final OkHttpClient client = new OkHttpClient();
public void run() throws Exception {
Request request = new Request.Builder()
.url(API_URL + authPreferences.getToken())
.build();
client.newCall(request).enqueue(new Callback() {
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
public void onResponse(Call call, Response response) throws IOException {
if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
Headers responseHeaders = response.headers();
for (int i = 0, size = responseHeaders.size(); i < size; i++) {
System.out.println(responseHeaders.name(i) + ": " + responseHeaders.value(i));
}
System.out.println(response.body().string());
String commatoken = response.body().string();
}
});
Request dataRequest = new Request.Builder()
.header("Authorization", "jwt"+commatoken)
.url(ChffrMe_URL).build();
client.newCall(dataRequest).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException {
if (!response.isSuccessful()) throw new IOException("Unexpected code " + response);
Headers responseHeaders = response.headers();
for (int i = 0, size = responseHeaders.size(); i < size; i++) {
System.out.println(responseHeaders.name(i) + ": " + responseHeaders.value(i));
}
System.out.println(response.body().string());
}
});
}
Хмм даже тогда второй маркер запятой в новом запросе еще красная говоря, что он не может разрешить символ «commatoken» –
Объявление commatoken наверху ... сделайте его глобальным –
Хмм по какой-то причине URL-адрес не принимает меня, помещая это строковое значение в заголовок ... –