首页 > 解决方案 > 如何通过 HTTP 请求将 Flutter 应用程序连接到 AWS EC2 实例

问题描述

我设置了一个 EC2 实例,并且已经能够在服务器上设置 Apache、Mysql 和 PHPmyadmin,当我访问EC2 实例的公共 IP 地址,我可以查看我从 PHP 脚本(myipadress/get.php)返回的 JSON 响应。我现在遇到的问题是,当我尝试使用 Flutter Http 包发出 HTTP 请求时,我收到以下错误消息

[ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: SocketException: OS Error: Connection refused, errno = 111, address = myipadress, port = 41038

我相信这个错误可能与我的 AWS EC2 实例端口有关,但我似乎找不到解决这个问题的方法。

标签: androidamazon-web-servicesflutterdartamazon-ec2

解决方案


我想问题不在于 AWS EC2 实例,问题在于我发出 http 请求的方式。

下面是我解析到请求中的 URI。

final uri = Uri.https('myIpAdress', '/get.php');

我通过将其切换到下面的代码解决了这个问题,以前使用 https,然后切换到 http。

final uri = Uri.http('myIpAdress', '/get.php');

推荐阅读