2020-12-12 20:32:06 +08:00
|
|
|
use actix_web::web;
|
|
|
|
use actix_web::HttpResponse;
|
|
|
|
use actix_web::get;
|
|
|
|
use serde::Serialize;
|
|
|
|
|
|
|
|
use crate::helpers::Authentication;
|
|
|
|
use crate::Data;
|
|
|
|
|
|
|
|
pub fn services(cfg: &mut web::ServiceConfig) {
|
|
|
|
cfg.service(list);
|
|
|
|
}
|
|
|
|
|
|
|
|
#[derive(Serialize)]
|
|
|
|
struct KeysResponse {
|
|
|
|
private: Option<String>,
|
|
|
|
public: Option<String>,
|
|
|
|
}
|
|
|
|
|
|
|
|
#[get("/keys", wrap = "Authentication::Admin")]
|
2020-12-22 21:02:41 +08:00
|
|
|
async fn list(_data: web::Data<Data>) -> HttpResponse {
|
2021-02-16 22:28:19 +08:00
|
|
|
let api_keys = data.api_keys.clone();
|
|
|
|
HttpResponse::Ok().json(KeysResponse {
|
|
|
|
private: api_keys.private,
|
|
|
|
public: api_keys.public,
|
|
|
|
})
|
2020-12-12 20:32:06 +08:00
|
|
|
}
|