diff options
author | 2024-02-20 17:04:32 -0800 | |
---|---|---|
committer | 2024-02-20 17:10:51 -0800 | |
commit | fc888d0640002521299fb41c16efe76502db8271 (patch) | |
tree | c0d0acc287e7985fe14d25c3475f01d153d7eb08 /trakt-macros/src/request.rs | |
parent | c47368322c6a96dd7c10b386c930b9f134c675a3 (diff) | |
download | trakt-fc888d0640002521299fb41c16efe76502db8271.tar.gz trakt-fc888d0640002521299fb41c16efe76502db8271.tar.zst trakt-fc888d0640002521299fb41c16efe76502db8271.zip |
refactor(request): changes to use `construct_req`
Diffstat (limited to '')
-rw-r--r-- | trakt-macros/src/request.rs | 29 |
1 files changed, 5 insertions, 24 deletions
diff --git a/trakt-macros/src/request.rs b/trakt-macros/src/request.rs index 93e43db..6b35894 100644 --- a/trakt-macros/src/request.rs +++ b/trakt-macros/src/request.rs @@ -63,32 +63,13 @@ pub fn derive_request(input: TokenStream) -> TokenStream { ctx: _trakt_core::Context, ) -> Result<_http::Request<T>, _trakt_core::error::IntoHttpError> { let (path, query): (#p_ident, #q_ident) = self.into(); - - let url = _trakt_core::construct_url( - ctx.base_url, - #endpoint, + _trakt_core::construct_req( + &ctx, + &Self::METADATA, &path, &query, - )?; - - let request = _http::Request::builder() - .method(Self::METADATA.method) - .uri(url) - .header("Content-Type", "application/json") - .header("trakt-api-version", "2") - .header("trakt-api-key", ctx.client_id); - - let request = match (Self::METADATA.auth, ctx.oauth_token) { - (_trakt_core::AuthRequirement::None, _) | (_trakt_core::AuthRequirement::Optional, None) => request, - (_trakt_core::AuthRequirement::Optional | _trakt_core::AuthRequirement::Required, Some(token)) => { - request.header("Authorization", format!("Bearer {}", token)) - } - (_trakt_core::AuthRequirement::Required, None) => { - return Err(_trakt_core::error::IntoHttpError::MissingToken); - } - }; - - Ok(request.body(T::default())?) + T::default(), + ) } } }; |