Skip to main content

CorsPolicy

Struct CorsPolicy 

Source
#[non_exhaustive]
pub struct CorsPolicy { pub allow_credentials: Option<bool>, pub allow_headers: Vec<String>, pub allow_methods: Vec<String>, pub allow_origin_regexes: Vec<String>, pub allow_origins: Vec<String>, pub disabled: Option<bool>, pub expose_headers: Vec<String>, pub max_age: Option<i32>, /* private fields */ }
Available on crate features region-url-maps or url-maps only.
Expand description

The specification for allowing client-side cross-origin requests. For more information about the W3C recommendation for cross-origin resource sharing (CORS), see Fetch API Living Standard.

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.
§allow_credentials: Option<bool>

In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This field translates to the Access-Control-Allow-Credentials header.

Default is false.

§allow_headers: Vec<String>

Specifies the content for the Access-Control-Allow-Headers header.

§allow_methods: Vec<String>

Specifies the content for the Access-Control-Allow-Methods header.

§allow_origin_regexes: Vec<String>

Specifies a regular expression that matches allowed origins. For more information, see regular expression syntax.

An origin is allowed if it matches either an item inallowOrigins or an item inallowOriginRegexes.

Regular expressions can only be used when the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.

§allow_origins: Vec<String>

Specifies the list of origins that is allowed to do CORS requests.

An origin is allowed if it matches either an item inallowOrigins or an item inallowOriginRegexes.

§disabled: Option<bool>

If true, disables the CORS policy. The default value is false, which indicates that the CORS policy is in effect.

§expose_headers: Vec<String>

Specifies the content for the Access-Control-Expose-Headers header.

§max_age: Option<i32>

Specifies how long results of a preflight request can be cached in seconds. This field translates to the Access-Control-Max-Age header.

Implementations§

Source§

impl CorsPolicy

Source

pub fn new() -> Self

Source

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

Sets the value of allow_credentials.

§Example
let x = CorsPolicy::new().set_allow_credentials(true);
Source

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

Sets or clears the value of allow_credentials.

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

pub fn set_allow_headers<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of allow_headers.

§Example
let x = CorsPolicy::new().set_allow_headers(["a", "b", "c"]);
Source

pub fn set_allow_methods<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of allow_methods.

§Example
let x = CorsPolicy::new().set_allow_methods(["a", "b", "c"]);
Source

pub fn set_allow_origin_regexes<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of allow_origin_regexes.

§Example
let x = CorsPolicy::new().set_allow_origin_regexes(["a", "b", "c"]);
Source

pub fn set_allow_origins<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of allow_origins.

§Example
let x = CorsPolicy::new().set_allow_origins(["a", "b", "c"]);
Source

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

Sets the value of disabled.

§Example
let x = CorsPolicy::new().set_disabled(true);
Source

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

Sets or clears the value of disabled.

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

pub fn set_expose_headers<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of expose_headers.

§Example
let x = CorsPolicy::new().set_expose_headers(["a", "b", "c"]);
Source

pub fn set_max_age<T>(self, v: T) -> Self
where T: Into<i32>,

Sets the value of max_age.

§Example
let x = CorsPolicy::new().set_max_age(42);
Source

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

Sets or clears the value of max_age.

§Example
let x = CorsPolicy::new().set_or_clear_max_age(Some(42));
let x = CorsPolicy::new().set_or_clear_max_age(None::<i32>);

Trait Implementations§

Source§

impl Clone for CorsPolicy

Source§

fn clone(&self) -> CorsPolicy

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 CorsPolicy

Source§

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

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

impl Default for CorsPolicy

Source§

fn default() -> CorsPolicy

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

impl Message for CorsPolicy

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for CorsPolicy

Source§

fn eq(&self, other: &CorsPolicy) -> 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 CorsPolicy

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>,