首页 > 解决方案 > Flutter Http 请求可在 broser 上使用,但无法在 Android 设备上运行

问题描述

[已解决] 这是我自己的网络情况造成的。如果你在中国,别忘了检查你的VPN。

我想在我的颤振项目中使用 TheMovieDB api,但是当我在我的 Android 设备上运行它时无法得到响应。

我的代码:

final url = "https://api.themoviedb.org/3/movie/popular?api_key=3c4cb870e3f3c729ef1eb2d0538ba4f7&language=en-US?page=$page";
try{
  var response = await http.get(Uri.parse(url));
  print(response);
  if (response.statusCode == 200) {
    var json = convert.jsonDecode(response.body) as Map<String, dynamic>;
    print('json is:');
    print(json);
    result = json['results']; 
  } else {
    result =
    'Error getting IP address:\nHttp status ${response.statusCode}';
  }
}catch(e){
  print(e);
}

错误信息是:

SocketException: OS Error: Connection timed out, errno = 110, address = api.themoviedb.org, port = 42230

标签: flutter

解决方案


请检查您是否提供了正确的权限,以及您是否在模拟器上指定了正确的配置


推荐阅读