Merge of dev-auth #1
@@ -391,14 +391,19 @@ async fn post_player(req: Request<Incoming>, db: Arc<Mutex<SqlitePool>>) -> Resu
|
|||||||
let name = data.get("name").unwrap().as_str().unwrap();
|
let name = data.get("name").unwrap().as_str().unwrap();
|
||||||
let pool = db.clone().lock().unwrap().clone();
|
let pool = db.clone().lock().unwrap().clone();
|
||||||
let mut conn = pool.acquire().await.unwrap();
|
let mut conn = pool.acquire().await.unwrap();
|
||||||
let r = sqlx::query!(r#"INSERT INTO players (name) VALUES (?1)"#, data).execute(&mut *conn).await;
|
if let Ok(Some(player)) = sqlx::query!(r#"SELECT * FROM players WHERE name = ?1"#, name).fetch_optional(&pool).await {
|
||||||
|
let player = Player{id: player.id, name: player.name};
|
||||||
|
return Ok(Response::builder().body(Body::new(serde_json::to_string(&player).unwrap())).unwrap());
|
||||||
|
}
|
||||||
|
let r = sqlx::query!(r#"INSERT INTO players (name) VALUES (?1) RETURNING id"#, name).fetch_one(&mut *conn).await;
|
||||||
if r.is_err() {
|
if r.is_err() {
|
||||||
return Ok(Response::builder()
|
return Ok(Response::builder()
|
||||||
.status(StatusCode::INTERNAL_SERVER_ERROR)
|
.status(StatusCode::INTERNAL_SERVER_ERROR)
|
||||||
.body(Body::Empty)
|
.body(Body::Empty)
|
||||||
.unwrap());
|
.unwrap());
|
||||||
}
|
}
|
||||||
ok().await
|
let player = Player{id: r.unwrap().id, name: name.to_string()};
|
||||||
|
Ok(Response::builder().body(Body::new(serde_json::to_string(&player).unwrap())).unwrap())
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn post_admin(
|
async fn post_admin(
|
||||||
|
|||||||
Reference in New Issue
Block a user