From d7580dbfdbdcf3ecf085479b6550284a47745138 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Fri, 28 Apr 2023 13:34:22 +0200 Subject: Cowboy 2.10.0 --- .../2.10/manual/cowboy_middleware/index.html | 208 +++++++++++++++++++++ 1 file changed, 208 insertions(+) create mode 100644 docs/en/cowboy/2.10/manual/cowboy_middleware/index.html (limited to 'docs/en/cowboy/2.10/manual/cowboy_middleware/index.html') diff --git a/docs/en/cowboy/2.10/manual/cowboy_middleware/index.html b/docs/en/cowboy/2.10/manual/cowboy_middleware/index.html new file mode 100644 index 00000000..9da69408 --- /dev/null +++ b/docs/en/cowboy/2.10/manual/cowboy_middleware/index.html @@ -0,0 +1,208 @@ + + + + + + + + + + Nine Nines: cowboy_middleware(3) + + + + + + + + + + + + + + + +
+
+
+
+ +

cowboy_middleware(3)

+ +

Name

+

cowboy_middleware - Middlewares

+

Description

+

The module cowboy_middleware defines a callback interface for Cowboy middlewares.

+

Middlewares process the request sequentially in the order they are configured.

+

Callbacks

+

Middlewares implement the following interface:

+
+
execute(Req, Env)
+    -> {ok, Req, Env}
+     | {suspend, module(), atom(), [any()]}
+     | {stop, Req}
+
+Req :: cowboy_req:req()
+Env :: cowboy_middleware:env()
+
+

The execute/2 is the only callback that needs to be implemented. It must execute the middleware and return with instructions for Cowboy.

+
ok
+

Cowboy should continue processing the request using the returned Req object and environment.

+
+
suspend
+

Cowboy will hibernate the process. When resuming, Cowboy will apply the returned module, function and arguments.

+
+
stop
+

Cowboy will stop middleware execution. No other middleware will be executed. This effectively ends the processing of the request.

+
+
+ +

Types

+

env()

+
+
env() :: #{atom() => any()}
+
+

Middleware environment.

+

A new environment is created for every request. The initial environment contained the user configured environment values (like dispatch for example) plus the listener value which contains the name of the listener for this connection.

+

Middlewares may modify the environment as necessary.

+

Changelog

+
  • 2.0: The env type is now a map instead of a proplist. +
  • +
  • 1.0: Behavior introduced. +
  • +
+

See also

+

cowboy(7)

+ + + + + + +
+ +
+ + +

+ Cowboy + 2.10 + Function Reference + +

+ + + +

Navigation

+ +

Version select

+ + +

Like my work? Donate!

+

Donate to Loïc Hoguin because his work on Cowboy, Ranch, Gun and Erlang.mk is fantastic:

+
+ + + + + + + + + +

Recurring payment options are also available via GitHub Sponsors. These funds are used to cover the recurring expenses like food, dedicated servers or domain names.

+ + + +
+
+
+
+ + + + + + + + + -- cgit v1.2.3