pub struct AzureFunctionsPlugin {
function_uri: Template,
apikey: Option<String>,
clientid: Option<String>,
ssl_verify: bool,
timeout: Duration,
client: Arc<OutboundClient>,
}Expand description
Forwards the request to an Azure Function and maps its reply into
Context.response.
Fields§
§function_uri: TemplateSupports {{namespace.path}} template references, rendered per
request.
apikey: Option<String>§clientid: Option<String>§ssl_verify: bool§timeout: Duration§client: Arc<OutboundClient>Implementations§
Source§impl AzureFunctionsPlugin
impl AzureFunctionsPlugin
Sourcepub fn from_config(
config: &HashMap<String, Value>,
resources: &Arc<PluginResources>,
) -> Result<Self, String>
pub fn from_config( config: &HashMap<String, Value>, resources: &Arc<PluginResources>, ) -> Result<Self, String>
Builds the plugin from node config.
Accepted keys:
function_uri(string, required): the Azure Function URL. A missing/empty value is a config-load error.authorization(object, optional):apikey(string) — sent as thex-functions-keyheader.clientid(string) — sent as thex-functions-clientidheader.
ssl_verify(bool, defaulttrue): verify TLS certificates.timeout(integer ms, default3000): whole-call deadline.
type: azure-functions
config:
function_uri: https://app.azurewebsites.net/api/HttpTrigger
authorization:
apikey: ${AZURE_FUNCTION_KEY}
ssl_verify: true
timeout: 3000Sourcefn build_request(&self, ctx: &Context) -> Result<OutboundRequest, String>
fn build_request(&self, ctx: &Context) -> Result<OutboundRequest, String>
Builds the outbound request: the client’s method/body/query forwarded to
function_uri plus the Azure function key headers.
Trait Implementations§
Source§impl Plugin for AzureFunctionsPlugin
impl Plugin for AzureFunctionsPlugin
Source§fn plugin_type(&self) -> &str
fn plugin_type(&self) -> &str
Source§fn execute<'life0, 'async_trait>(
&'life0 self,
ctx: Context,
) -> Pin<Box<dyn Future<Output = Result<PluginOutput, PluginExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn execute<'life0, 'async_trait>(
&'life0 self,
ctx: Context,
) -> Pin<Box<dyn Future<Output = Result<PluginOutput, PluginExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Executes the plugin logic against the request/response context. Read more
Source§fn reads_response_body(&self) -> bool
fn reads_response_body(&self) -> bool
Whether this configured instance reads
context.response.body. Read moreSource§fn cache_target(&self) -> Option<CacheTarget>
fn cache_target(&self) -> Option<CacheTarget>
The cache backend this node writes to, if it is a
proxy-cache half. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for AzureFunctionsPlugin
impl !UnwindSafe for AzureFunctionsPlugin
impl Freeze for AzureFunctionsPlugin
impl Send for AzureFunctionsPlugin
impl Sync for AzureFunctionsPlugin
impl Unpin for AzureFunctionsPlugin
impl UnsafeUnpin for AzureFunctionsPlugin
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more