发送以下 http 获取请求时出现错误。我使用颤振 2.5
Posted
技术标签:
【中文标题】发送以下 http 获取请求时出现错误。我使用颤振 2.5【英文标题】:I get an error while I send the following http get request. I use flutter 2.5 【发布时间】:2021-12-20 15:08:54 【问题描述】:这是导致错误的代码行
var currencyData = await http.get(Uri.parse('https://rest.coinapi.io/v1/exchangerate/BTC/USD?apikey=------------------------'));
这是错误日志
E/flutter (20209): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: HandshakeException: Handshake error in client (OS Error:
E/flutter (20209): CERTIFICATE_VERIFY_FAILED: certificate has expired(handshake.cc:359))
E/flutter (20209): #0 _SecureFilterImpl._handshake (dart:io-patch/secure_socket_patch.dart:101:69)
E/flutter (20209): #1 _SecureFilterImpl.handshake (dart:io-patch/secure_socket_patch.dart:143:25)
E/flutter (20209): #2 _RawSecureSocket._secureHandshake (dart:io/secure_socket.dart:794:54)
E/flutter (20209): #3 _RawSecureSocket._tryFilter (dart:io/secure_socket.dart:924:19)
E/flutter (20209): <asynchronous suspension>
E/flutter (20209):
D/mali_winsys(20209): new_window_surface returns 0x3000, [720x1280]-format:1
D/libEGL (20209): eglInitialize EGLDisplay = 0xd867f7c4
I/OpenGLRenderer(20209): Initialized EGL, version 1.4
D/mali_winsys(20209): new_window_surface returns 0x3000, [720x1280]-format:1
I/Timeline(20209): Timeline: Activity_idle id: android.os.BinderProxy@a6bd033 time:158054628
E/flutter (20209): [ERROR:flutter/shell/common/shell.cc(93)] Dart Unhandled Exception: HandshakeException: Handshake error in client (OS Error:
E/flutter (20209): CERTIFICATE_VERIFY_FAILED: certificate has expired(handshake.cc:359)), stack trace: #0 _SecureFilterImpl._handshake (dart:io-patch/secure_socket_patch.dart:101:69)
E/flutter (20209): #1 _SecureFilterImpl.handshake (dart:io-patch/secure_socket_patch.dart:143:25)
E/flutter (20209): #2 _RawSecureSocket._secureHandshake (dart:io/secure_socket.dart:794:54)
E/flutter (20209): #3 _RawSecureSocket._tryFilter (dart:io/secure_socket.dart:924:19)
E/flutter (20209): <asynchronous suspension>
E/flutter (20209):
【问题讨论】:
【参考方案1】:这是一个 https 协议问题。由于 url 工作正常,更像是您的设备存在问题。尝试调整其时钟可能会解决此问题,因为 https 需要客户端和服务器都具有相同的当前时间。 如果此问题仍然存在,请尝试在其他设备上运行您的代码。
【讨论】:
我在另一台设备上运行它并且它工作正常。有没有办法在我自己的设备上运行它?我真的需要在这个设备上运行它。 你可以试试这个解决方案来解决这个问题:***.com/a/61312927/5818075以上是关于发送以下 http 获取请求时出现错误。我使用颤振 2.5的主要内容,如果未能解决你的问题,请参考以下文章
从 Angular 向 Asp.net 发送 post 请求时出现错误 405
向本地服务器发送请求时出现 Flutter Web XMLHttpRequest 错误
使用 Auth Headers 发送 axios get 请求时出现 401 错误