Skip to main content

HttpRedirectAction

Struct HttpRedirectAction 

Source
#[non_exhaustive]
pub struct HttpRedirectAction { pub host_redirect: Option<String>, pub https_redirect: Option<bool>, pub path_redirect: Option<String>, pub prefix_redirect: Option<String>, pub redirect_response_code: Option<RedirectResponseCode>, pub strip_query: Option<bool>, /* private fields */ }
Available on crate features region-url-maps or url-maps only.
Expand description

Specifies settings for an HTTP redirect.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§host_redirect: Option<String>

The host that is used in the redirect response instead of the one that was supplied in the request.

The value must be from 1 to 255 characters.

§https_redirect: Option<bool>

If set to true, the URL scheme in the redirected request is set to HTTPS. If set to false, the URL scheme of the redirected request remains the same as that of the request.

This must only be set for URL maps used inTargetHttpProxys. Setting this true forTargetHttpsProxy is not permitted.

The default is set to false.

§path_redirect: Option<String>

The path that is used in the redirect response instead of the one that was supplied in the request.

pathRedirect cannot be supplied together withprefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect.

The value must be from 1 to 1024 characters.

§prefix_redirect: Option<String>

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request.

prefixRedirect cannot be supplied together withpathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request is used for the redirect.

The value must be from 1 to 1024 characters.

§redirect_response_code: Option<RedirectResponseCode>

The HTTP Status code to use for this RedirectAction.

Supported values are:

  • MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
  • FOUND, which corresponds to 302.
  • SEE_OTHER which corresponds to 303.
  • TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method is retained.
  • PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method is retained.
§strip_query: Option<bool>

If set to true, any accompanying query portion of the original URL is removed before redirecting the request. If set to false, the query portion of the original URL is retained.

The default is set to false.

Implementations§

Source§

impl HttpRedirectAction

Source

pub fn new() -> Self

Source

pub fn set_host_redirect<T>(self, v: T) -> Self
where T: Into<String>,

Sets the value of host_redirect.

§Example
let x = HttpRedirectAction::new().set_host_redirect("example");
Source

pub fn set_or_clear_host_redirect<T>(self, v: Option<T>) -> Self
where T: Into<String>,

Sets or clears the value of host_redirect.

§Example
let x = HttpRedirectAction::new().set_or_clear_host_redirect(Some("example"));
let x = HttpRedirectAction::new().set_or_clear_host_redirect(None::<String>);
Source

pub fn set_https_redirect<T>(self, v: T) -> Self
where T: Into<bool>,

Sets the value of https_redirect.

§Example
let x = HttpRedirectAction::new().set_https_redirect(true);
Source

pub fn set_or_clear_https_redirect<T>(self, v: Option<T>) -> Self
where T: Into<bool>,

Sets or clears the value of https_redirect.

§Example
let x = HttpRedirectAction::new().set_or_clear_https_redirect(Some(false));
let x = HttpRedirectAction::new().set_or_clear_https_redirect(None::<bool>);
Source

pub fn set_path_redirect<T>(self, v: T) -> Self
where T: Into<String>,

Sets the value of path_redirect.

§Example
let x = HttpRedirectAction::new().set_path_redirect("example");
Source

pub fn set_or_clear_path_redirect<T>(self, v: Option<T>) -> Self
where T: Into<String>,

Sets or clears the value of path_redirect.

§Example
let x = HttpRedirectAction::new().set_or_clear_path_redirect(Some("example"));
let x = HttpRedirectAction::new().set_or_clear_path_redirect(None::<String>);
Source

pub fn set_prefix_redirect<T>(self, v: T) -> Self
where T: Into<String>,

Sets the value of prefix_redirect.

§Example
let x = HttpRedirectAction::new().set_prefix_redirect("example");
Source

pub fn set_or_clear_prefix_redirect<T>(self, v: Option<T>) -> Self
where T: Into<String>,

Sets or clears the value of prefix_redirect.

§Example
let x = HttpRedirectAction::new().set_or_clear_prefix_redirect(Some("example"));
let x = HttpRedirectAction::new().set_or_clear_prefix_redirect(None::<String>);
Source

pub fn set_redirect_response_code<T>(self, v: T) -> Self

Sets the value of redirect_response_code.

§Example
use google_cloud_compute_v1::model::http_redirect_action::RedirectResponseCode;
let x0 = HttpRedirectAction::new().set_redirect_response_code(RedirectResponseCode::MovedPermanentlyDefault);
let x1 = HttpRedirectAction::new().set_redirect_response_code(RedirectResponseCode::PermanentRedirect);
let x2 = HttpRedirectAction::new().set_redirect_response_code(RedirectResponseCode::SeeOther);
Source

pub fn set_or_clear_redirect_response_code<T>(self, v: Option<T>) -> Self

Sets or clears the value of redirect_response_code.

§Example
use google_cloud_compute_v1::model::http_redirect_action::RedirectResponseCode;
let x0 = HttpRedirectAction::new().set_or_clear_redirect_response_code(Some(RedirectResponseCode::MovedPermanentlyDefault));
let x1 = HttpRedirectAction::new().set_or_clear_redirect_response_code(Some(RedirectResponseCode::PermanentRedirect));
let x2 = HttpRedirectAction::new().set_or_clear_redirect_response_code(Some(RedirectResponseCode::SeeOther));
let x_none = HttpRedirectAction::new().set_or_clear_redirect_response_code(None::<RedirectResponseCode>);
Source

pub fn set_strip_query<T>(self, v: T) -> Self
where T: Into<bool>,

Sets the value of strip_query.

§Example
let x = HttpRedirectAction::new().set_strip_query(true);
Source

pub fn set_or_clear_strip_query<T>(self, v: Option<T>) -> Self
where T: Into<bool>,

Sets or clears the value of strip_query.

§Example
let x = HttpRedirectAction::new().set_or_clear_strip_query(Some(false));
let x = HttpRedirectAction::new().set_or_clear_strip_query(None::<bool>);

Trait Implementations§

Source§

impl Clone for HttpRedirectAction

Source§

fn clone(&self) -> HttpRedirectAction

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for HttpRedirectAction

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for HttpRedirectAction

Source§

fn default() -> HttpRedirectAction

Returns the “default value” for a type. Read more
Source§

impl Message for HttpRedirectAction

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for HttpRedirectAction

Source§

fn eq(&self, other: &HttpRedirectAction) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for HttpRedirectAction

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,