我正在try 使用FTPConnect库在Ffltter中建立FTPS连接,但它不起作用.

我的代码是:

FTPConnect ftpConnect = FTPConnect('devftp.made.net', user: 'user', pass: 'pass', showLog: kDebugMode, securityType: SecurityType.FTPS); 
await ftpConnect.connect();

以下是日志(log):

flutter: [2023-12-06 15:19:25.576751] Connecting... 

flutter: [2023-12-06 15:19:25.613803] Connection established, waiting for welcome message... 

flutter: [2023-12-06 15:19:25.918900] < FTPReply =  [code= 220, message= 220 Welcome on Made in App FTP server. Shaken, not stirred.] 

[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: HandshakeException: Handshake error in client (OS Error:  
WRONG_VERSION_NUMBER(tls_record.cc:231)) #0      _SecureFilterImpl._handshake (dart:io-patch/secure_socket_patch.dart:99:46) #1      _SecureFilterImpl.handshake (dart:io-patch/secure_socket_patch.dart:143:25) #2      _RawSecureSocket._secureHandshake (dart:io/secure_socket.dart:920:54) #3      _RawSecureSocket._tryFilter (dart:io/secure_socket.dart:1049:19) <asynchronous suspension>

当然,提供的凭据不是真实的.

推荐答案

SecurityType.FTPS是一种非标准的FTP加密模式.

更常见的是标准的SecurityType.FTPES模式.我想你应该利用这一点.

Flutter相关问答推荐

如何刷新future 的构建器时,没有OBS变量的内部在Ffltter?

Flutter API请求BadState响应

升级到Ffltter 3.16后,应用程序栏、背景 colored颜色 、按钮大小和间距都会发生变化

通过Ffltter应用程序与Docker服务器进行交互以进行身份验证

在VSCode中运行应用程序而不进行调试时,控制台仍显示为调试模式

Firebase WHERE过滤器在日期字段中不起作用

如何在Flutter Webview包中触发基于URL导航的事件

如何翻转这种剪刀设计

Flutter类调用另一个类中的另一个方法失败

处理 flutter/dart 模型中的空值

如何使用 Material3 创建带有高度的完美白色提升按钮?

如何从flutter中不同类别的列表中获取所有产品

构建上下文不能跨异步间隙使用

如果其他Provider 的帐户已存在,如何阻止用户登录?

如何制作flutter showDialog、AlertDialog屏障 colored颜色 渐变

如何使用 riverpod_annotation 创建非自动处置提供程序?

在 Flutter 中读取 Firebase 数据库数据时遇到问题

在 CircleAvatar 中放置芯片

将 onSaved(value) 从自定义 TextFormField 小部件传递给另一个?

Flutter:如何将 AssetImage 转换为 Unit8List?