как написать функцию на языке dart, которая возвращает будущее со списком заданий из задания GitHub?

#flutter #dart #github

#flutter #dart #github

Вопрос:

GitHub Jobs имеет открытый API для запроса вакансий, связанных с разработкой программного обеспечения. Следующий URL-адрес возвращает список удаленных заданий:

 https://jobs.github.com/positions.json?location=remote
 

Учитывая следующий простой класс данных, в котором вас интересуют только название компании и должность, как написать функцию, которая возвращает Future со списком заданий?

 class Job {
   Job(this.company, this.title);
   final String company;
   final String title;
}
 

Ответ №1:

 import 'dart:convert'; 
import 'package:http/http.dart' as http;
Future<List<Job>> fetchJobs() async { 
   final host = 'jobs.github.com'; 
   final path = 'positions.json'; 
   final queryParameters = {'location': 'remote'}; 
   final headers = {'Accept': 'application/json'}; 
   final uri = Uri.https(host, path, queryParameters); 
   final results = await http.get(uri, headers: headers); 
   final jsonList = json.decode(results.body) as List; 
   return jsonList.map((job) => Job.fromJson(job)).toList(); 
} 
 

Комментарии:

1. Добро пожаловать в Stack Overflow. Спасибо за ваш ответ. Хотя ваш ответ может решить вопрос, он лучше, чем добавление объяснения. Кроме того, пожалуйста, отредактируйте свой ответ, пометьте свой код как код, чтобы он был лучше читаемым.