如何使用 React native 将文件上传到 FTP 服务器?

How to get files uploaded on FTP server with React native?

实际上,我想使用 React-native 获取上传到 FTP 服务器的具有目录结构的文件。

我试图找到图书馆,但没有找到任何与之相关的东西。

那么你能帮我解决这个问题吗?

import React, { Component } from 'react';
import { StyleSheet, View, Button } from 'react-native';
import FTP from 'react-native-ftp';

export default class App extends Component {
  onButtonpress() {
     FTP.setup("IP", 21) //Setup host
     FTP.login("username", "password").then(
     (result) => {
        FTP.list(".").then(
          (result) => {
            console.log(result);
        }
      );
    },
   (error) => {
    alert(error);
   }
  )
}
render() {
  return (
    <View >
      <Button onPress={this.onButtonpress.bind(this)} title="hi" />
    </View>
  );
 }
}

这是我试过的示例,但我在导入时出错 'react-native-ftp'。 我收到错误 "Could not find declaration for module 'react-native-ftp'".

您遇到的错误是因为 react-native-ftp 函数在 ios 上不可用 - 它们未实现。您需要分叉回购并实施它们以与 ios 一起工作。

然后:
您可以使用 react-native-ftp:

下载如下文件
FTP.downloadFile("./nameOfFileToBeDownloaded","localPathWhereItWillBeSaved")
    .then(result=>console.log(result))
    .catch(error=>alert(error))

或使用uploadFile上传:

FTP.uploadFile("./nameOfFileToBeUploaded","remotePathWhereItWillBeSaved")
    .then(result=>console.log(result))
    .catch(error=>alert(error))

如果您想要整个文件夹,您可以先使用 react-native-zip-archive 压缩它,然后只上传压缩文件。