Giter Club home page Giter Club logo

Comments (12)

alexcrichton avatar alexcrichton commented on May 21, 2024

Ah yes, right! I had some difficulty initially with some CI and decided to not bind them in the first pass, I'll take a look now at binding them and see how it goes.

from curl-rust.

alexcrichton avatar alexcrichton commented on May 21, 2024

Ok, lemme know if that works for you!

from curl-rust.

sector-f avatar sector-f commented on May 21, 2024

Well, it looks good...but I honestly don't know enough about curl (yet) to tell if it works.

What's the correct way to take a PathBuf and then upload the corresponding file to a form?

from curl-rust.

alexcrichton avatar alexcrichton commented on May 21, 2024

I believe that would look like this

from curl-rust.

sector-f avatar sector-f commented on May 21, 2024

Seems like a step in the right direction, but I can't get it to work—though I'm willing to bet it's my fault. Here's my function:

fn upload_files(url: String, files: Vec<PathBuf>, _concurrent_uploads: u32) {
    curl::init();
    let mut handle = Easy::new();
    for file in &files {
        let mut form = Form::new();
        form.part("file").file(&file).add().unwrap();

        handle.url(&url).unwrap();
        handle.httppost(form).unwrap();

        handle.write_function(|a| {
            Ok(stdout().write(a).unwrap())
        }).unwrap();

        handle.perform().unwrap();
    }
}

However, handle.perform() is returning an Err, [26] Failed to open/read local data from file/application

from curl-rust.

alexcrichton avatar alexcrichton commented on May 21, 2024

Hm and you're sure all those files exist? You may be able to use strace as well to figure out which syscall curl is issuing that's failing

from curl-rust.

sector-f avatar sector-f commented on May 21, 2024

Hm, it apparently works with an absolute path but not with a relative one.

from curl-rust.

alexcrichton avatar alexcrichton commented on May 21, 2024

Hm that's odd, the test I have is using a relative path...

from curl-rust.

sector-f avatar sector-f commented on May 21, 2024

Actually, correction: ./foo.jpg works but foo.jpg does not.

from curl-rust.

alexcrichton avatar alexcrichton commented on May 21, 2024

Oh weird, do you have an example that doesn't work in terms of a concrete setup?

from curl-rust.

sector-f avatar sector-f commented on May 21, 2024

Oh, dear. It just got weirder.

./target/debug/curl_main room.jpg (what I'd been trying) fails. So I just copied another picture to the directory.

./target/debug/curl_main ocean.jpg succeeds.

from curl-rust.

sector-f avatar sector-f commented on May 21, 2024

Just for posterity: the above problem was caused by a lack of null terminators.

This was fixed in 5f9fe7b

from curl-rust.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.