Как сделать POST-запрос по curl с массивом карты для actix-from-data? - PullRequest
0 голосов
/ 09 июля 2019

Я пытаюсь отправить запрос POST по керлу с массивом карты. Как это должно быть написано?

Я написал:

curl -X POST -H "Content-Type: multipart/form-data" -F files[]="name=\"qqq\"" localhost:8080/upload

Но возвращается ошибка Found field with unexpected name or type.

Кстати, как было бы с некомментированным штрихом с двумя полями на каждой карте? для имени файла и для данных файла?

fn main() -> Result<(), failure::Error> {
    let form = Form::new()
        .field("files", Field::array(
            Field::map()
                .field("name", Field::text())
    //                .field("file", Field::file(Gen))
                .finalize()
        ));

    println!("{:?}", form);

    HttpServer::new(move || {
        App::new()
            .service(resource("/upload")
                .data(form.clone())
                .route(post()
                    .to(upload_multipart)
                )
            )
    })
    .bind("127.0.0.1:8080")?
    .run()?;

    Ok(())
}

1 Ответ

0 голосов
/ 10 июля 2019

curl -i -X POST -F files[][name]="qqq" localhost:8080/upload

правильная команда

...