Заголовки ответа в Dart
Заголовки ответа лежат отдельно от тела. Карта
response.headers возвращает пары имя и
значение. Имена в HTTP не чувствительны к регистру,
но в карте их ищут в нижнем регистре.
Эндпоинт "/response-headers" позволяет
задать заголовки, которые сервер вернет клиенту.
Тип содержимого удобно проверить так:
import 'package:http/http.dart' as http;
void main() async {
var uri = Uri.parse(
'https://httpbin.org/response-headers?'
'Content-Type=text/plain',
);
var response = await http.get(uri);
var type = response.headers['content-type'] ?? '';
print(type);
}
Индекс ['content-type'] дает первое
значение для имени или null, если поля
нет. Число разных имен в ответе видно по длине
карты:
import 'package:http/http.dart' as http;
void main() async {
var uri = Uri.parse(
'https://httpbin.org/response-headers?'
'Content-Type=text/plain',
);
var response = await http.get(uri);
print(response.headers.length);
}
Выведите значение поля "content-type"
для ответа
"https://httpbin.org/response-headers?Content-Type=text/html".
Отправьте чтение на "/get" и напечатайте
первое значение заголовка "date", если
он пришел, иначе строку "none".