From 0bd5ac14a00923cc3ed3cb37d718a9935183d2fe Mon Sep 17 00:00:00 2001 From: Dominik Stefancik Date: Sun, 29 Oct 2023 02:52:43 +0200 Subject: [PATCH] Simplify reading and sending csv --- server/Cargo.lock | 23 +---------------------- server/Cargo.toml | 2 +- server/src/main.rs | 15 +++++---------- 3 files changed, 7 insertions(+), 33 deletions(-) diff --git a/server/Cargo.lock b/server/Cargo.lock index e8590e2..696446c 100644 --- a/server/Cargo.lock +++ b/server/Cargo.lock @@ -393,27 +393,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "csv" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" -dependencies = [ - "csv-core", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "csv-core" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" -dependencies = [ - "memchr", -] - [[package]] name = "deranged" version = "0.3.9" @@ -1158,7 +1137,7 @@ version = "0.1.0" dependencies = [ "actix-cors", "actix-web", - "csv", + "mime", "serde_json", ] diff --git a/server/Cargo.toml b/server/Cargo.toml index 344bf7c..7412541 100644 --- a/server/Cargo.toml +++ b/server/Cargo.toml @@ -8,5 +8,5 @@ edition = "2021" [dependencies] actix-cors = "0.6.4" actix-web = "4.4.0" -csv = "1.3.0" +mime = "0.3.17" serde_json = "1.0.107" diff --git a/server/src/main.rs b/server/src/main.rs index b8c3348..193ad31 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -2,9 +2,8 @@ use actix_cors::Cors; use actix_web::{get, http, middleware, App, HttpResponse, HttpServer, Responder}; use serde_json::Value; use std::env::current_dir; -use std::fs::File; +use std::fs::{read_to_string, File}; use std::path::PathBuf; -use csv::Reader; #[get("/")] async fn get_root() -> impl Responder { @@ -28,15 +27,11 @@ async fn get_json() -> impl Responder { #[get("/csv")] async fn get_csv() -> impl Responder { let file_path = get_data_file_path("web-diggers-alpha.csv"); - let mut reader = Reader::from_path(file_path).expect("Failed to read CSV file"); + let file = read_to_string(file_path).expect("Failed to read CSV file"); - for string_record in reader.records() { - let record = string_record.expect("Failed to read CSV file"); - println!("Record {:?}", record); - } - - HttpResponse::Ok().body("CSV TEST") - // HttpResponse::Ok().body(reader.records().collect::>().as_slice()) + HttpResponse::Ok() + .append_header(http::header::ContentType(mime::TEXT_CSV)) + .body(file) } #[actix_web::main]