feature/share-libs
rs 27 lines 865 Bytes
Raw
1 use crate::models::account::ErrorResponse;
2 use crate_error_codes::ErrorCode;
3 use log::{debug, error};
4 use reqwest::Response;
5
6 pub mod account;
7 pub mod content;
8
9 async fn parse_error_response<T>(response: Response) -> Result<T, ErrorResponse> {
10 let e: ErrorResponse = match response.json().await {
11 Ok(json) => json,
12 Err(e) => {
13 //debug!("Received text: {:?}", response.text().await);
14 //return Err(ErrorResponse {
15 // error_code: ErrorCode::InvalidRequest,
16 // message: "test".to_string()
17 //});
18 error!("Failed to parse error response: {:?}", e);
19 return Err(ErrorResponse {
20 error_code: ErrorCode::ParseError,
21 message: e.to_string(),
22 });
23 }
24 };
25 debug!("Error response: {:?}", e);
26 return Err(e);
27 }