Module opendal::services::ftp

source ·
Expand description

FTP support for OpenDAL.

Configuration

  • endpoint: set the endpoint for connection
  • port : set the port for connection
  • root: Set the work directory for backend
  • credential: login credentials
  • tls: tls mode

You can refer to Builder’s docs for more information

Environment

  • OPENDAL_FTP_ENDPOINT optional
  • OPENDAL_FTP_ROOT required
  • OPENDAL_FTP_USER optional
  • OPENDAL_FTP_PASSWORD optional

Example

Initiate via environment variables

Set environment correctly:

export OPENDAL_FTP_ENDPOINT=endpoint    # required
export OPENDAL_FTP_ROOT=/path/to/dir/   # if not set, will be seen as "/"
export OPENDAL_FTP_USER=name            # default with empty string ""
export OPENDAL_FTP_PASSWORD=password    # default with empty string ""
use anyhow::Result;
use opendal::Object;
use opendal::Operator;
use opendal::Scheme;

#[tokio::main]
async fn main() -> Result<()> {
    let op: Operator = Operator::from_env(Scheme::Ftp)?;

    // create an object handler to start operation on it.
    let _op: Object = op.object("test_file");

    Ok(())
}

Via Builder

use anyhow::Result;
use opendal::services::ftp;
use opendal::Object;
use opendal::Operator;

#[tokio::main]
async fn main() -> Result<()> {
    // create backend builder
    let mut builder = ftp::Builder::default();

    builder.endpoint("127.0.0.1");

    let op: Operator = Operator::new(builder.build()?);
    let _obj: Object = op.object("test_file");
    Ok(())
}

Structs

Builder for ftp backend.