dart Flutter Http错误SocketException:操作系统错误:连接被拒绝

tjrkku2a  于 2023-07-31  发布在  Flutter
关注(0)|答案(3)|浏览(193)

我正在使用一个新创建的项目上的最后一个Flutter版本。我试图将此URL称为https://jsonplaceholder.typicode.com/users
但在iOS或Android上,我得到了flutter: Error SocketException: OS Error: Connection refused, errno = 61, address = jsonplaceholder.typicode.com, port = 52988
以下是我的网络电话:

import 'dart:async';
import 'dart:convert';
import 'dart:io';

import 'package:test_flutter/constants.dart';
import 'package:test_flutter/users/models/user.dart';

class UserNetworkDatasource {
  Future<List<User>> retrieve() async {
    var httpClient = HttpClient();
    var uri = new Uri.https(baseUrl, '/users');
    var request = await httpClient.getUrl(uri);
    var response = await request.close();
    var responseJson = await response.transform(utf8.decoder).join();
    List userMap = json.decode(responseJson);

    return userMap.map((jsonUser) => User.fromJson(jsonUser));
  }
}

字符串
还有什么可以做的比这更多吗?我检查了Android清单,它有互联网权限,所以应该是确定的
Flutter 0.3.2 ·通道beta
框架·修订版44 b7 e7 d3 f4(4周前)· 2018-04-20 01:02:44 -0700
发动机·修订版09 d 05 a3891
工具· dart 2.0.0-dev.48.0. flutter-fe 606 f890 b

5fjcxozz

5fjcxozz1#

我也有同样的错误,但只在发布版本(Android)上。在app/src下的android文件夹中有3个文件夹:debug、main和profile,每个都包含AndroidManifest文件。debug文件夹中的文件有internet权限,但main中的文件没有,这导致了错误。

t9aqgxwy

t9aqgxwy2#

尝试从手机转到URL。我也遇到了同样的问题,我使用python http.server来托管json文件。首先,我给了我同样的异常,因为我用一个预定义的URL绑定它。我的模拟器无法访问URL。

uplii1fm

uplii1fm3#

我们(我自己和我的女朋友)正在运行一个Android手机(不是模拟器),我们正在使用我们的本地服务器上的Web服务在同一网络与Android手机,但错误是在我们的本地服务器的端口,它没有打开.
在我们运行Ubuntu 22.04.2 LTS的本地服务器上。
第一个月
您可以搜索如何在操作系统中打开端口,看看它是否适合您。
Linux:https://www.digitalocean.com/community/tutorials/opening-a-port-on-linux#for-ubuntu-users-and-ufw-based-systems
适用于MacOS:https://www.macworld.com/article/671729/mac-firewall-how-to-open-specific-ports-in-os-x-10-10-firewall.html
对于Windows:https://learn.microsoft.com/en-us/sql/reporting-services/report-server/configure-a-firewall-for-report-server-access?view=sql-server-ver16

相关问题