feat: implement surrealdb and redis
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
use super::{mutation_login, AuthLoginRequestDto};
|
||||
use axum::{response::Response, Json};
|
||||
use axum::{response::IntoResponse, Extension, Json};
|
||||
|
||||
pub async fn post_login(Json(payload): Json<AuthLoginRequestDto>) -> Response {
|
||||
mutation_login(payload).await
|
||||
use super::{mutation_login, AuthLoginRequestDto};
|
||||
use crate::AppState;
|
||||
|
||||
pub async fn post_login(
|
||||
Extension(state): Extension<AppState>,
|
||||
Json(payload): Json<AuthLoginRequestDto>,
|
||||
) -> impl IntoResponse {
|
||||
mutation_login(payload, &state).await
|
||||
}
|
||||
|
||||
@@ -1,8 +1,30 @@
|
||||
use super::auth_dto::AuthLoginRequestDto;
|
||||
use crate::{success_response, ResponseSuccessDto};
|
||||
use crate::{success_response, AppState, ResponseSuccessDto};
|
||||
use axum::response::Response;
|
||||
|
||||
pub async fn mutation_login(params: AuthLoginRequestDto) -> Response {
|
||||
const USERS_KEY: &str = "users";
|
||||
|
||||
pub async fn mutation_login(
|
||||
params: AuthLoginRequestDto,
|
||||
state: &AppState,
|
||||
) -> Response {
|
||||
let _users: Option<AuthLoginRequestDto> = state
|
||||
.surrealdb
|
||||
.select((USERS_KEY, &*params.email))
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
let mut redis_conn = state
|
||||
.redisdb
|
||||
.get_connection()
|
||||
.expect("failed to get connection");
|
||||
|
||||
redis::cmd("SET")
|
||||
.arg("some_key")
|
||||
.arg("some_value")
|
||||
.query::<()>(&mut redis_conn)
|
||||
.expect("failed to set value");
|
||||
|
||||
let response = ResponseSuccessDto {
|
||||
data: AuthLoginRequestDto {
|
||||
email: params.email,
|
||||
|
||||
+5
-1
@@ -1,3 +1,7 @@
|
||||
use axum::Router;
|
||||
|
||||
pub mod auth;
|
||||
|
||||
pub use auth::*;
|
||||
pub async fn routes() -> Router {
|
||||
Router::new().nest("/auth", auth::auth_router())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user