pub struct Redirect { /* private fields */ }
Expand description
Response that redirects the request to another location.
Example
use axum::{
routing::get,
response::Redirect,
Router,
};
let app = Router::new()
.route("/old", get(|| async { Redirect::permanent("/new") }))
.route("/new", get(|| async { "Hello!" }));
Implementations
sourceimpl Redirect
impl Redirect
sourcepub fn to(uri: &str) -> Self
pub fn to(uri: &str) -> Self
Create a new Redirect
that uses a 303 See Other
status code.
This redirect instructs the client to change the method to GET for the subsequent request
to the given uri
, which is useful after successful form submission, file upload or when
you generally don’t want the redirected-to page to observe the original request method and
body (if non-empty). If you want to preserve the request method and body,
Redirect::temporary
should be used instead.
Panics
If uri
isn’t a valid HeaderValue
.
sourcepub fn temporary(uri: &str) -> Self
pub fn temporary(uri: &str) -> Self
Create a new Redirect
that uses a 307 Temporary Redirect
status code.
This has the same behavior as Redirect::to
, except it will preserve the original HTTP
method and body.
Panics
If uri
isn’t a valid HeaderValue
.
sourcepub fn permanent(uri: &str) -> Self
pub fn permanent(uri: &str) -> Self
Create a new Redirect
that uses a 308 Permanent Redirect
status code.
Panics
If uri
isn’t a valid HeaderValue
.
Trait Implementations
sourceimpl IntoResponse for Redirect
impl IntoResponse for Redirect
sourcefn into_response(self) -> Response
fn into_response(self) -> Response
Create a response.
Auto Trait Implementations
impl RefUnwindSafe for Redirect
impl Send for Redirect
impl Sync for Redirect
impl Unpin for Redirect
impl UnwindSafe for Redirect
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more