INNER CODE UNIT · Rust

call

vercel-community/rust · crates/vercel_axum/src/lib.rs:45

    fn call(&mut self, event: Event) -> Self::Future {
        let (event, _context) = event.into_parts();
        let request = serde_json::from_str::<VercelRequest>(&event.body).unwrap_or_default();

        let mut builder = axum::http::request::Builder::new()
            .method(request.method)
            .uri(format!("https://{}{}", request.host, request.path));
        for (key, value) in request.headers {
            if let Some(k) = key {
                builder = builder.header(k, value);
            }
        }

        let request: axum::http::Request<axum::body::Body> = match (request.body, request.encoding)
        {
            (Some(b), Some(encoding)) if encoding == "base64" => {
                let engine = base64::prelude::BASE64_STANDARD;
                let body = axum::body::Body::from(engine.decode(b.as_ref()).unwrap_or_default());

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…