您当前的位置: 首页 >  http

Allen Su

暂无认证

  • 1浏览

    0关注

    431博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Flutter 问题系列第 27 篇】DioError [DioErrorType.DEFAULT]:Bad state: Insecure HTTP is not allowed by plat

Allen Su 发布时间:2021-07-10 22:07:48 ,浏览量:1

这是【Flutter 问题系列第 27 篇】,如果觉得有用的话,欢迎关注专栏。

一:问题描述

前段时间在面试,有家公司问是否愿意做一个小的入职测试,想着多个机会多条路,就顺便做了,但项目刚开始运行,就报错了,报错信息如下图所示 在这里插入图片描述 其中主要关键字是 Bad state: Insecure HTTP is not allowed by platform ,翻译后是说错误的状态,因为平台不允许不安全的 HTTP 请求。

这是在获取用户信息接口中发生的错误,用到了 HTTP 请求,然后查阅了相关资料并尝试后,最终修复了这个问题,需要说明的是,我只在 Android 端进行了配置。

二:解决方案

出现这种情况,是因为 Android 9 对网络请求做了限制,不能直接访问 HTTP 域名的地址,可以通过修改项目的配置文件,允许不加密的请求也可以使用,总共就两步,接下来说下如何配置。

步骤一:

依次按照路径 android/app/src/main/AndroidManifest.xml 找到安卓的清单文件,在 application 标签中添加两个属性

 

步骤二:

android/app/src/main/res 目录下新建名为 xml 的文件夹,然后在 xml 文件夹下新建 network_security_config.xml 文件,如下图所示 在这里插入图片描述 network_security_config.xml 的文件内容为



    
        
            
        
    

重新编译项目后,报错的问题就没有了。

你的问题得到解决了吗?欢迎在评论区留言。

赠人玫瑰,手有余香,如果觉得文章不错,希望可以给个一键三连,感谢。

结束语 Google 的 Flutter 越来越火,截止 2021年7月10日 GitHub 标星已达 124K,Flutter 毅然是一种趋势,所以作为前端开发者,没有理由不趁早去学习。 无论你是 Flutter 新手还是已经入门了,不妨先点个关注,后续我会将 Flutter 中的常用组件(含有源码分析、组件的用法及注意事项)以及可能遇到的问题写到 CSDN 博客中,希望自己学习的同时,也可以帮助更多的人。
关注
打赏
1656491068
查看更多评论
立即登录/注册

微信扫码登录

0.0362s