Я пытаюсь написать простой API с ракетой, чтобы помочь себе изучить ржавчину, но я столкнулся с этой ошибкой после того, как попытался объявить маршрут POST:
error: malformed attribute
--> src/main.rs:26:1
|
26 | #[post("/producers", format="application/json", data =<"prod">)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: expected syntax: #[post(key = value, ..)]
Вот объявление функции для этого маршрута :
#[post("/producers", format="application/json", data =<"producer">)]
fn post_producer(producer: Json<Producer>) -> String {
return("hello".to_string());
}
И я импортирую эти макросы:
#![feature(proc_macro_hygiene, decl_macro)]
#[macro_use] extern crate rocket;
#[macro_use] extern crate serde_derive;
#[macro_use] extern crate rocket_contrib;
use rocket_contrib::json::Json;
У меня есть другой метод, объявленный для GET, но он работает нормально. Я провел некоторое исследование и нашел эти примеры и документацию: https://api.rocket.rs/v0.4/rocket_codegen/attr.post.html https://rocket.rs/v0.4/guide/requests/#format
Насколько я могу судить, я следую соглашениям, упомянутым в обе эти страницы, и я немного растерялся, где go отсюда. Есть какой-то синтаксис или импорт, который мне не хватает?