我最近在我的应用中升级了flutter版本。但当我想要调试应用程序时,它会显示以下错误:
连接服务协议出错:HttpException: Connection closed before full header was received, URI = http://127.0.0.1:50795/ws
是否有其他人在升级flutter版本后遇到相同的问题?如果有任何解决方法,请分享。
我最近在我的应用中升级了flutter版本。但当我想要调试应用程序时,它会显示以下错误:
连接服务协议出错:HttpException: Connection closed before full header was received, URI = http://127.0.0.1:50795/ws
是否有其他人在升级flutter版本后遇到相同的问题?如果有任何解决方法,请分享。
我找到了解决方案/解决方法。对我来说,在物理设备上可以工作,但在模拟器上无法工作。简单的解决方法是使用x86环境的模拟器,而不是x86_64模拟器。
我也遇到了同样的问题。实际上问题出在原生代码中。
如果你在Android Studio中打开一个your_app/android项目
并运行它,你可以追踪问题。
iOS也是一样的 -> 在Xcode中打开iOS项目
。
所以在我修复后,应用程序按预期运行。
希望这对你有帮助。
如果您处于发布模式并在Android Studio上运行,则会遇到此问题。前往Runner -> editSchema -> Run -> 将构建配置更改为 Debug。
我停止了正在运行的应用程序,然后再次点击运行,这对我起作用了。
您还需要在文件中定义您的监听端口,例如: final WebSocketChannel channel = IOWebSocketChannel.connect('wss://check.com:6043/');
这解决了我的问题。
就像Vitaly所说的那样...
我也在努力尝试通过Xcode构建iOS时强制出现此错误,我想在使用Android Studio构建Android时也是如此。
对于iOS,请执行flutter build ios --release
,然后在Xcode中打开/运行项目
对于Android,请执行flutter build apk --release
,然后在Android Studio中打开/运行项目
似乎在通过flutter进行调试时存在问题...如果我找到其他方法,我会更新这个答案,但是使用这种方法似乎很稳定。
尝试使用Uri.parse(url);
确保您在此处放置的'url'是带有端点的完整url。
当我使用Flutter和http包时,遇到了相同的错误。
import 'package:http/http.dart' as http;
...
http.Response response = http.get('url')
这个没问题。但是当我尝试获取 response.statusCode
时,出现了 Error connecting
错误。
我发现我在电脑上使用了 SSR/v2Ray。我通过在 Android 模拟器扩展控制面板中设置代理来解决这个问题。
Keep-Alive timeout
配置设置为>=
15秒。如果您无法访问http服务器,请尝试从客户端降低HttpClient的idleTimeout到5秒。 HttpClient()..idleTimeout = const Duration(seconds: 5);
flutter clean
起了作用。 - Stack Underflow