Skip to content
Clone
main
24 lines 752 B Rust
use ::session::AuthedUser;
use api::http::State;
use api::rest::{AppResponseData, NoData};
use crate::errors::ApiError;
use crate::services::service::UserService;
#[utoipa::path(
delete,
path = "/me/avatar",
tag = "user",
description = "清空当前用户头像并尽力删除存储对象。",
responses(
(status = 200, description = "avatar deleted", body = AppResponseData<NoData>),
(status = 401, description = "authentication required", body = AppResponseData<NoData>)
)
)]
pub async fn delete_avatar(
State(service): State<UserService>,
AuthedUser(uid): AuthedUser,
) -> Result<AppResponseData<NoData>, ApiError> {
service.avatars.delete_avatar(uid).await?;
Ok(AppResponseData::empty())
}