首頁  >  問答  >  主體

API 在 postman 上工作但拒絕在 Flutter 中連接

postRequest() async {
    Map\<String, dynamic\> map = {
        'email': '[email protected]',
        'password': '1234',
    };

    try {
        var url = Uri.parse('http://127.0.0.1:8000/api/login');
        var response = await http.post(url,
            headers: {
                'Accept': 'application/json'
            },
            body: jsonEncode(map)
        );

        if (response.statusCode == 200) {
            var responseBody = jsonDecode(response.body);
            print(responseBody);
            return responseBody;
        } else {
            print("try error ${response.statusCode}");
        }
    } catch (e) {
        print("Error catch ${e}");
    }
}

錯誤:

I/flutter (25242): 錯誤捕獲連線被拒絕

#
P粉207483087P粉207483087219 天前443

全部回覆(1)我來回復

  • P粉070918777

    P粉0709187772024-04-07 00:57:07

    嘗試將您的應用程式託管在本機 IP 上,並使用相同的 wifi 或網路連接您的手機。如:

    如果您使用 Windows,則:

    用於 Wi-Fi 連線

    1. 選擇“開始”>“設定”>“網路與網際網路”>“Wi-Fi”,然後選擇 您連接到的 Wi-Fi 網路。

    2. 在「屬性」下,尋找 IPv4 旁邊列出的您的 IP 位址 地址。

    用於乙太網路連線

    1. #選擇「開始」>「設定」>「網路和網際網路」>「乙太網路」。

    2. 在「屬性」下,尋找 IPv4 旁邊列出的您的 IP 位址 地址。

    如果您使用 Ubuntu,則:

    看起來像 192.168.x.x 例如:- 192.168.0.100、192.168.1.20..etc

    開啟您要託管的根資料夾的終端。然後運行這個命令

    您需要將此 IP 更改為您的 IP 192.168.x.x 和端口,因為您將託管“我更喜歡 8000”,並在您的 Flutter 應用程式中使用該 IP 位址和端口。

    回覆
    0
  • 取消回覆