公司防火墙后面的Flutter应用在软件包获取期间抛出TLS错误

时间:2018-08-16 18:18:56

标签: proxy dart flutter flutter-dependencies

最近已安装Flutter并探索hello-world应用程序。遵循了https://flutter.io/get-started/中提到的所有步骤,并且能够运行

::扑扑医生

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel beta, v0.5.1, on Microsoft Windows [Version 10.0.15063], locale en-US)
[√] Android toolchain - develop for Android devices (Android SDK 28.0.2)
[√] Android Studio (version 3.1)
[!] VS Code, 64-bit edition (version 1.26.0)
[√] Connected devices (1 available)
! Doctor found issues in 1 categories.

还能够使用以下命令创建应用程序框架;

::颤抖地创建myapp

但是,当它尝试安装pubspec.yaml下提到的所有依赖项时,它开始显示错误并继续尝试重新连接。这是日志,

Running "flutter packages get" in hello_world...
Got TLS error trying to find package cupertino_icons at https://pub.dartlang.org.
pub get failed (69) -- attempting retry 1 in 1 second...
Got TLS error trying to find package cupertino_icons at https://pub.dartlang.org.
pub get failed (69) -- attempting retry 2 in 2 seconds...

我怀疑这是由于防火墙的缘故,对于其他软件包管理器,我一直在使用代理服务器来启用提取,该提取工作正常。我找不到一种为flutter或pub实现此类代理的方法。我也尝试使用中国服务器,但这也没有帮助我。我已经安装和卸载了几次,以确保缓存不会引起此问题。

有人知道吗?

5 个答案:

答案 0 :(得分:1)

我有同样的问题。我在一家公司工作,我不得不使用https_proxy env变量来获取连接。

在Windows上打开cmd

  

设置https_proxy = USERNAME:PASSWORD @ hostname:port

     

颤动创建

     

颤动

     

flutter软件包获得

这对我有用,希望对您有所帮助!

答案 1 :(得分:1)

设置以下Windows环境变量后,我成功了。

变量名称:DART_VM_OPTIONS 变量值:--root-certs-file = path_to_cert

其中path_to_cert是标准路径。

答案 2 :(得分:0)

您可能需要通过设置以下环境变量来设置自签名证书以使其正常运行:

在Linux上:

  

export DART_VM_OPTIONS =“-root-certs-file = {path.to.certificate.file}”

在Windows上:

  

设置https_proxy =“-root-certs-file = {path.to.certificate.file}”

答案 3 :(得分:0)

针对Windows环境执行此操作

set https_proxy=USERNAME:PASSWORD@hostname:port
set http_proxy=USERNAME:PASSWORD@hostname:port
set NO_PROXY=localhost,127.0.0.1

在致电之前 扑动创建

答案 4 :(得分:0)

TLS 错误意味着:存在时区差异,意味着您在印度并且您设置了美国时区。服务器知道有人拦截了连接或连接被某种方式操纵,因此出现错误。

因此请确保您的原籍国和时区相同。检查 Windows 设置--> 时间和语言,您将在下拉菜单中选择您所在国家/地区的时区并重新启动 PC,现在运行 flutter doctor 您将看到以下消息。

> Checking Dart SDK version... 
> Downloading Dart SDK from Flutter engine...
> Expanding downloaded archive... 
> Building flutter tool... 
> Running pub upgrade...

我为这个错误尝试了很多方法,但最终应用了第一原则方法并得到了解决方案。

祝你好运。