atomic_lti/request.rs
1use crate::errors::AtomicError;
2
3// Sends a given request and implements error handling
4pub async fn send_request(request: reqwest::RequestBuilder) -> Result<String, AtomicError> {
5 let response = request
6 .send()
7 .await
8 .map_err(|e| AtomicError::Internal(e.to_string()))?;
9
10 let status = response.status();
11 let body = response
12 .text()
13 .await
14 .map_err(|e| AtomicError::Internal(e.to_string()))?;
15
16 if !status.is_success() {
17 return Err(AtomicError::Internal(body));
18 }
19
20 Ok(body)
21}