pub struct StreamBody<S> { /* private fields */ }
Expand description

An http_body::Body created from a Stream.

The purpose of this type is to be used in responses. If you want to extract the request body as a stream consider using BodyStream.

Example

use axum::{
    Router,
    routing::get,
    body::StreamBody,
    response::IntoResponse,
};
use futures::stream::{self, Stream};
use std::io;

async fn handler() -> StreamBody<impl Stream<Item = io::Result<&'static str>>> {
    let chunks: Vec<io::Result<_>> = vec![
        Ok("Hello,"),
        Ok(" "),
        Ok("world!"),
    ];
    let stream = stream::iter(chunks);
    StreamBody::new(stream)
}

let app = Router::new().route("/", get(handler));

Implementations

Create a new StreamBody from a Stream.

Trait Implementations

Values yielded by the Body.
The error type this Body might generate.
Attempt to pull out the next data buffer of this stream.
Poll for an optional single HeaderMap of trailers. Read more
Returns true when the end of stream has been reached. Read more
Returns the bounds on the remaining length of the stream. Read more
Maps this body’s data value to a different value.
Maps this body’s error value to a different value.
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Converts to this type from the input type.
Create a response.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Should always be Self
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more