未处理的异常:SocketException:主机查找失败:URL(操作系统错误:没有与主机名关联的地址,错误号=7)



编辑:问题现已解决


我在这里尝试了这个解决方案,但对我来说没有效果。

案例

  1. 我已提供互联网权限
  2. 我正在实际设备上运行
  3. 我的设备上有一个活动的互联网连接

基本上,我在python中构建了一个API,并将其部署在vercel上。现在我正在尝试使用flutter从我的API获取详细信息。链路是https://dailyhunt.vandit.cf/dailyhunt?category=technology

它在web上运行良好,但在实际设备上不起作用

我的代码太长了,被分隔在多个文件中,所以我可以提供这个:

import 'package:news_app/models/article_model.dart';
import 'package:http/http.dart' as http;
import 'package:news_app/constants.dart';
import 'dart:convert';
class News {
List<ArticleModel> news = [];
Future getNews() async {
http.Client client = http.Client();
http.Response response = await client.get(Uri.parse(kDailyhuntEndpoint));
if (response.statusCode == 200) {
var jsonData = jsonDecode(response.body);
if (jsonData['success'] == true) {
jsonData['data'].forEach((element) {
if (element['imageUrl'] != "" && element['content'] != "") {
List<String> raw = element['PublishedTime'].split(" ");
String date = raw[0];
String time = raw[1];
ArticleModel articleModel = ArticleModel(
publishedDate: date,
publishedTime: time,
image: element['imageUrl'].toString(),
content: element['content'].toString(),
fullArticle: element['publisherStory'].toString(),
views: element['viewCount'].toString(),
title: element['title'].toString(),
);
news.add(articleModel);
}
});
} else {
print('ERROR');
}
}
}
}

它正在给出响应。我已经在真实的设备上测试了它,它运行良好

Future getNews() async {
http.Response response = await http
.get("https://dailyhunt.vandit.cf/dailyhunt?category=technology");
if (response.statusCode == 200) {
var jsonData = jsonDecode(response.body);
print(jsonData);
if (jsonData['success'] == true) {}
} else {
print('ERROR');
}
}

相关内容

  • 没有找到相关文章

最新更新