Added APIToken parameter to extract data function for improved security

This commit is contained in:
Thorsten Sommer 2025-05-02 15:34:46 +02:00
parent 4632867998
commit 221b7d44ac
Signed by: tsommer
GPG Key ID: 371BBA77A02C0108

View File

@ -15,6 +15,7 @@ use rocket::response::stream::{EventStream, Event};
use rocket::tokio::select;
use rocket::serde::Serialize;
use rocket::get;
use crate::api_token::APIToken;
#[derive(Debug, Serialize)]
pub struct Chunk {
@ -39,7 +40,7 @@ type Result<T> = std::result::Result<T, Box<dyn std::error::Error + Send + Sync>
type ChunkStream = Pin<Box<dyn Stream<Item = Result<Chunk>> + Send>>;
#[get("/retrieval/fs/extract?<path>")]
pub async fn extract_data(path: String, mut end: Shutdown) -> EventStream![] {
pub async fn extract_data(_token: APIToken, path: String, mut end: Shutdown) -> EventStream![] {
EventStream! {
let stream_result = stream_data(&path).await;
match stream_result {