Files
Sriraj 59ec36a48a [Fixes #97] Added a News & Memes App (#99)
* Added a News&Memes-App/Sriraj-dev

* Added Screen recording and Screenshots

* Update README.md

* Added demo directory with sample images/recording

* Update README.md
2022-10-22 20:22:33 +02:00

43 lines
1.1 KiB
Dart

import 'dart:convert';
import 'package:http/http.dart' as http;
final String apikey = 'YOUR_API_KEY';
Future<List<NewsModel>> showNews() async {
Uri uri = Uri.parse(
'https://newsapi.org/v2/top-headlines?country=in&apiKey=$apikey');
final response = await http.get(uri);
if (response.statusCode == 200 || response.statusCode == 201) {
print(response.body);
Map<String, dynamic> result = json.decode(response.body);
List articles = result['articles'];
print('Articles are - $articles');
List<NewsModel> news = articles.map((e) => NewsModel.fromjson(e)).toList();
return news;
} else {
print('Error - ${response.statusCode}');
return [];
}
}
class NewsModel {
String title, description, content, imageUrl, date;
NewsModel(
this.title, this.description, this.content, this.imageUrl, this.date);
factory NewsModel.fromjson(Map<String, dynamic> jsondata) {
return NewsModel(
jsondata['title'] ?? '',
jsondata['description'] ?? '',
jsondata['content'] ?? '',
jsondata['urlToImage'] ?? 'NoImage',
jsondata['publishedAt'] ?? '');
}
}