错误状态:平台不允许使用不安全的 HTTP:http://0.0.0.0:9090

Posted

技术标签:

【中文标题】错误状态:平台不允许使用不安全的 HTTP:http://0.0.0.0:9090【英文标题】:Bad state: Insecure HTTP is not allowed by platform: http://0.0.0.0:9090 【发布时间】:2021-07-18 02:20:32 【问题描述】:

我正在尝试从我的 Flutter 应用程序连接到位于 ws://local host:9090(使用 rosbridge 运行)的 Ros WebSocket 服务,但在 Flutter 中出现以下错误:

错误状态:平台不允许使用不安全的 HTTP:http://local host:9090

【问题讨论】:

flutter.dev/docs/release/breaking-changes/… 【参考方案1】:

打开 android/app/src/main 文件夹中的 AndroidManifest.xml 文件。

然后将 usesCleartextTraffic 设置为 true

<application
    ...
    android:usesCleartextTraffic="true"
    ...   >

【讨论】:

【参考方案2】:

确保权限并将 android:usesCleartextTraffic 设置为 true

<uses-permission android:name="android.permission.INTERNET" />
        <application
                android:name="io.flutter.app.FlutterApplication"
                android:label="receipt"
                android:usesCleartextTraffic="true"
                android:icon="@mipmap/ic_launcher">

【讨论】:

【参考方案3】:
    作为Aia Ashraf said,您必须在清单文件中添加互联网权限:

&lt;uses-permission android:name="android.permission.INTERNET" /&gt;

    请将android:usesCleartextTraffic="true" 添加到yourapp\android\app\src\debug\AndroidManifest.xml.yourapp\android\app\src\main\AndroidManifest.xml. 中的AndroidManifest.xml 文件中,如下所示:

    <application
     ...
     android:usesCleartextTraffic="true"
     ...   >
    

    最后一件事是确保您的 Windows 防火墙已关闭。

这是关于这个问题的 Flutter 文档:

https://docs.flutter.dev/release/breaking-changes/network-policy-ios-android

【讨论】:

以上是关于错误状态:平台不允许使用不安全的 HTTP:http://0.0.0.0:9090的主要内容,如果未能解决你的问题,请参考以下文章

错误 HTTP 状态 405 ?使用 GCP 负载平衡器时不允许的方法

Scrapy 404错误:未处理或不允许HTTP状态代码

REST - HTTP 状态 405;方法不允许;请求方法“PUT”不支持错误

平台不允许 Flutter Insecure http

WCF 请求失败,HTTP 状态为 405:不允许方法

HTTP 状态 405 – Apache Tomcat 服务器中不允许的方法 [重复]