Как получить и отправить с actix_redis - PullRequest
0 голосов
/ 10 февраля 2019

Эта функция основана на примере .Код компилируется, и я могу сделать POST, но в Redis ничего не пишется.

fn index(req: &HttpRequest<AppState>) -> Box<Future<Item = HttpResponse, Error = Error>> {
    let redis = req.state().redis_addr.clone();
    let one = redis.send(Command(resp_array!["SET", "mydomain:one", "adfasdfasdf"]));
    let info_set = join_all(vec![one].into_iter());

    info_set
        .map_err(Error::from)
        .and_then(|res: Vec<Result<RespValue, ARError>>|
            // successful operations return "OK", so confirm that all returned as so
            if !res.iter().all(|res| {
                match res {
                    Ok(RespValue::SimpleString(x)) if x == "OK" => true,
                    _ => false
                }
            }) {
                Ok("fadfasfa")
            } else {
                Ok("omg!!!!")
            }
        ).responder();

    req.json()
        .from_err() // convert all errors into `Error`
        .and_then(|val: MyObj| {
            println!("model: {:?}", val);
            Ok(HttpResponse::Ok().json(val)) // <- send response
        })
        .responder()
}
...