1
0
mirror of https://github.com/actix/actix-website synced 2024-11-25 01:02:58 +01:00
actix-website/static/api/actix-web/0.7.2/actix_web/struct.HttpRequest.html
2018-07-26 10:53:41 -07:00

118 lines
66 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `HttpRequest` struct in crate `actix_web`."><meta name="keywords" content="rust, rustlang, rust-lang, HttpRequest"><title>actix_web::HttpRequest - Rust</title><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><p class='location'>Struct HttpRequest</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.state">state</a><a href="#method.request">request</a><a href="#method.extensions">extensions</a><a href="#method.extensions_mut">extensions_mut</a><a href="#method.response">response</a><a href="#method.build_response">build_response</a><a href="#method.uri">uri</a><a href="#method.method">method</a><a href="#method.version">version</a><a href="#method.path">path</a><a href="#method.connection_info">connection_info</a><a href="#method.url_for">url_for</a><a href="#method.url_for_static">url_for_static</a><a href="#method.resource">resource</a><a href="#method.peer_addr">peer_addr</a><a href="#method.query">query</a><a href="#method.query_string">query_string</a><a href="#method.cookies">cookies</a><a href="#method.cookie">cookie</a><a href="#method.match_info">match_info</a><a href="#method.set_read_buffer_capacity">set_read_buffer_capacity</a></div><a class="sidebar-title" href="#deref-methods">Methods from Deref&lt;Target=Request&gt;</a><div class="sidebar-links"><a href="#method.uri">uri</a><a href="#method.method">method</a><a href="#method.version">version</a><a href="#method.path">path</a><a href="#method.headers">headers</a><a href="#method.peer_addr">peer_addr</a><a href="#method.keep_alive">keep_alive</a><a href="#method.extensions">extensions</a><a href="#method.extensions_mut">extensions_mut</a><a href="#method.upgrade">upgrade</a><a href="#method.connection_info">connection_info</a><a href="#method.server_settings">server_settings</a></div><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-HttpMessage">HttpMessage</a><a href="#impl-Deref">Deref</a><a href="#impl-Drop">Drop</a><a href="#impl-Clone">Clone</a><a href="#impl-FromRequest%3CS%3E">FromRequest&lt;S&gt;</a><a href="#impl-Debug">Debug</a><a href="#impl-From%3C%26%27a%20HttpRequest%3CS%3E%3E">From&lt;&amp;&#39;a HttpRequest&lt;S&gt;&gt;</a><a href="#impl-RequestIdentity">RequestIdentity</a><a href="#impl-RequestSession">RequestSession</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-Send">!Send</a><a href="#impl-Sync">!Sync</a></div></div><p class='location'><a href='index.html'>actix_web</a></p><script>window.sidebarCurrent = {name: 'HttpRequest', ty: 'struct', relpath: ''};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><input class="search-input" name="search" autocomplete="off" placeholder="Click or press S to search, ? for more options…" type="search"><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='in-band'>Struct <a href='index.html'>actix_web</a>::<wbr><a class="struct" href=''>HttpRequest</a></span><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>&#x2212;</span>]</a></span><a class='srclink' href='../src/actix_web/httprequest.rs.html#30-34' title='goto source code'>[src]</a></span></h1><div class="docblock type-decl"><pre class='rust struct'>pub struct HttpRequest&lt;S&nbsp;=&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt; { /* fields omitted */ }</pre></div><div class='docblock'><p>An HTTP Request</p>
</div>
<h2 id='methods' class='small-section-header'>
Methods<a href='#methods' class='anchor'></a>
</h2>
<h3 id='impl' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#62-315' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.state' class="method"><div class="important-traits"><div class='tooltip'><span class='tooltiptext'>Important traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut </a>R</span></div><div class="content hidden"><h3 class="important">Important traits for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut </a>R</h3><code class="content"><span class="where fmt-newline">impl&lt;'a, R&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut </a>R <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;R: <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Read.html" title="trait std::io::Read">Read</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></span><span class="where fmt-newline">impl&lt;'a, W&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut </a>W <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;W: <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></span><span class="where fmt-newline">impl&lt;'a, I&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html" title="trait core::iter::iterator::Iterator">Iterator</a> for <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;'a mut </a>I <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html" title="trait core::iter::iterator::Iterator">Iterator</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></span><span class="where fmt-newline"> type <a href='https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html#associatedtype.Item' class="type">Item</a> = &lt;I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html" title="trait core::iter::iterator::Iterator">Iterator</a>&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::iterator::Iterator::Item">Item</a>;</span></code></div></div><span id='state.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.state' class='fnname'>state</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>S</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#98-100' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Shared application state</p>
</div><h4 id='method.request' class="method"><span id='request.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.request' class='fnname'>request</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/struct.Request.html" title="struct actix_web::Request">Request</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#104-106' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Server request</p>
</div><h4 id='method.extensions' class="method"><span id='extensions.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.extensions' class='fnname'>extensions</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.Ref.html" title="struct core::cell::Ref">Ref</a>&lt;<a class="struct" href="../actix_web/struct.Extensions.html" title="struct actix_web::Extensions">Extensions</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#110-112' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Request extensions</p>
</div><h4 id='method.extensions_mut' class="method"><span id='extensions_mut.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.extensions_mut' class='fnname'>extensions_mut</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.RefMut.html" title="struct core::cell::RefMut">RefMut</a>&lt;<a class="struct" href="../actix_web/struct.Extensions.html" title="struct actix_web::Extensions">Extensions</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#116-118' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Mutable reference to a the request's extensions</p>
</div><h4 id='method.response' class="method"><span id='response.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.response' class='fnname'>response</a>(&amp;self, status: <a class="struct" href="../actix_web/http/struct.StatusCode.html" title="struct actix_web::http::StatusCode">StatusCode</a>, body: <a class="enum" href="../actix_web/enum.Body.html" title="enum actix_web::Body">Body</a>) -&gt; <a class="struct" href="../actix_web/struct.HttpResponse.html" title="struct actix_web::HttpResponse">HttpResponse</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#129-131' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Create http response</p>
</div><h4 id='method.build_response' class="method"><span id='build_response.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.build_response' class='fnname'>build_response</a>(&amp;self, status: <a class="struct" href="../actix_web/http/struct.StatusCode.html" title="struct actix_web::http::StatusCode">StatusCode</a>) -&gt; <a class="struct" href="../actix_web/dev/struct.HttpResponseBuilder.html" title="struct actix_web::dev::HttpResponseBuilder">HttpResponseBuilder</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#135-139' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Create http response builder</p>
</div><h4 id='method.uri' class="method"><span id='uri.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.uri' class='fnname'>uri</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://docs.rs/http/0.1.8/http/uri/struct.Uri.html" title="struct http::uri::Uri">Uri</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#143-145' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the Request Uri.</p>
</div><h4 id='method.method' class="method"><span id='method.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.method' class='fnname'>method</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/http/struct.Method.html" title="struct actix_web::http::Method">Method</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#149-151' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the Request method.</p>
</div><h4 id='method.version' class="method"><span id='version.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.version' class='fnname'>version</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/http/struct.Version.html" title="struct actix_web::http::Version">Version</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#155-157' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the Request Version.</p>
</div><h4 id='method.path' class="method"><span id='path.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.path' class='fnname'>path</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#161-163' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>The target path of this Request.</p>
</div><h4 id='method.connection_info' class="method"><span id='connection_info.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.connection_info' class='fnname'>connection_info</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.Ref.html" title="struct core::cell::Ref">Ref</a>&lt;<a class="struct" href="../actix_web/dev/struct.ConnectionInfo.html" title="struct actix_web::dev::ConnectionInfo">ConnectionInfo</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#167-169' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Get <em>ConnectionInfo</em> for the correct request.</p>
</div><h4 id='method.url_for' class="method"><span id='url_for.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.url_for' class='fnname'>url_for</a>&lt;U, I&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;self, <br>&nbsp;&nbsp;&nbsp;&nbsp;name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;elements: U<br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://docs.rs/url/1.7.0/url/struct.Url.html" title="struct url::Url">Url</a>, <a class="enum" href="../actix_web/error/enum.UrlGenerationError.html" title="enum actix_web::error::UrlGenerationError">UrlGenerationError</a>&gt; <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/trait.IntoIterator.html" title="trait core::iter::traits::IntoIterator">IntoIterator</a>&lt;Item = I&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>&gt;,&nbsp;</span></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#191-199' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Generate url for named resource</p>
<pre class="rust rust-example-rendered">
<span class="kw">fn</span> <span class="ident">index</span>(<span class="ident">req</span>: <span class="ident">HttpRequest</span>) <span class="op">-&gt;</span> <span class="ident">HttpResponse</span> {
<span class="kw">let</span> <span class="ident">url</span> <span class="op">=</span> <span class="ident">req</span>.<span class="ident">url_for</span>(<span class="string">&quot;foo&quot;</span>, <span class="kw-2">&amp;</span>[<span class="string">&quot;1&quot;</span>, <span class="string">&quot;2&quot;</span>, <span class="string">&quot;3&quot;</span>]); <span class="comment">// &lt;- generate url for &quot;foo&quot; resource</span>
<span class="ident">HttpResponse</span>::<span class="prelude-val">Ok</span>().<span class="ident">into</span>()
}
<span class="kw">fn</span> <span class="ident">main</span>() {
<span class="kw">let</span> <span class="ident">app</span> <span class="op">=</span> <span class="ident">App</span>::<span class="ident">new</span>()
.<span class="ident">resource</span>(<span class="string">&quot;/test/{one}/{two}/{three}&quot;</span>, <span class="op">|</span><span class="ident">r</span><span class="op">|</span> {
<span class="ident">r</span>.<span class="ident">name</span>(<span class="string">&quot;foo&quot;</span>); <span class="comment">// &lt;- set resource name, then it could be used in `url_for`</span>
<span class="ident">r</span>.<span class="ident">method</span>(<span class="ident">http</span>::<span class="ident">Method</span>::<span class="ident">GET</span>).<span class="ident">f</span>(<span class="op">|</span><span class="kw">_</span><span class="op">|</span> <span class="ident">HttpResponse</span>::<span class="prelude-val">Ok</span>());
})
.<span class="ident">finish</span>();
}</pre>
</div><h4 id='method.url_for_static' class="method"><span id='url_for_static.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.url_for_static' class='fnname'>url_for_static</a>(&amp;self, name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://docs.rs/url/1.7.0/url/struct.Url.html" title="struct url::Url">Url</a>, <a class="enum" href="../actix_web/error/enum.UrlGenerationError.html" title="enum actix_web::error::UrlGenerationError">UrlGenerationError</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#205-208' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Generate url for named resource</p>
<p>This method is similar to <code>HttpRequest::url_for()</code> but it can be used
for urls that do not contain variable parts.</p>
</div><h4 id='method.resource' class="method"><span id='resource.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.resource' class='fnname'>resource</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/dev/struct.ResourceInfo.html" title="struct actix_web::dev::ResourceInfo">ResourceInfo</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#212-214' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>This method returns reference to current <code>RouteInfo</code> object.</p>
</div><h4 id='method.peer_addr' class="method"><span id='peer_addr.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.peer_addr' class='fnname'>peer_addr</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/std/net/addr/enum.SocketAddr.html" title="enum std::net::addr::SocketAddr">SocketAddr</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#224-226' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Peer socket address</p>
<p>Peer address is actual socket address, if proxy is used in front of
actix http server, then peer address would be address of this proxy.</p>
<p>To get client connection information <code>connection_info()</code> method should
be used.</p>
</div><h4 id='method.query' class="method"><span id='query.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.query' class='fnname'>query</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.Ref.html" title="struct core::cell::Ref">Ref</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/std/collections/hash/map/struct.HashMap.html" title="struct std::collections::hash::map::HashMap">HashMap</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#229-238' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>url query parameters.</p>
</div><h4 id='method.query_string' class="method"><span id='query_string.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.query_string' class='fnname'>query_string</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#244-250' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>The query string in the URL.</p>
<p>E.g., id=10</p>
</div><h4 id='method.cookies' class="method"><span id='cookies.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.cookies' class='fnname'>cookies</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.Ref.html" title="struct core::cell::Ref">Ref</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="struct" href="../actix_web/http/struct.Cookie.html" title="struct actix_web::http::Cookie">Cookie</a>&lt;'static&gt;&gt;&gt;, <a class="enum" href="../actix_web/error/enum.CookieParseError.html" title="enum actix_web::error::CookieParseError">CookieParseError</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#254-270' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Load request cookies.</p>
</div><h4 id='method.cookie' class="method"><span id='cookie.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.cookie' class='fnname'>cookie</a>(&amp;self, name: &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="../actix_web/http/struct.Cookie.html" title="struct actix_web::http::Cookie">Cookie</a>&lt;'static&gt;&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#274-283' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Return request cookie.</p>
</div><h4 id='method.match_info' class="method"><span id='match_info.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.match_info' class='fnname'>match_info</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/dev/struct.Params.html" title="struct actix_web::dev::Params">Params</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#298-300' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Get a reference to the Params object.</p>
<p>Params is a container for url parameters.
A variable segment is specified in the form <code>{identifier}</code>,
where the identifier can be used later in a request handler to
access the matched value for that segment.</p>
</div><h4 id='method.set_read_buffer_capacity' class="method"><span id='set_read_buffer_capacity.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.set_read_buffer_capacity' class='fnname'>set_read_buffer_capacity</a>(&amp;mut self, cap: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#310-314' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Set read buffer capacity</p>
<p>Default buffer capacity is 32Kb.</p>
</div></div>
<h2 id='deref-methods' class='small-section-header'>
Methods from <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>&lt;Target = <a class="struct" href="../actix_web/struct.Request.html" title="struct actix_web::Request">Request</a>&gt;<a href='#deref-methods' class='anchor'></a>
</h2>
<div class='impl-items'><h4 id='method.uri-1' class="method"><span id='uri.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.uri-1' class='fnname'>uri</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://docs.rs/http/0.1.8/http/uri/struct.Uri.html" title="struct http::uri::Uri">Uri</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#106-108' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the Request Uri.</p>
</div><h4 id='method.method-1' class="method"><span id='method.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.method-1' class='fnname'>method</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/http/struct.Method.html" title="struct actix_web::http::Method">Method</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#112-114' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the Request method.</p>
</div><h4 id='method.version-1' class="method"><span id='version.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.version-1' class='fnname'>version</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/http/struct.Version.html" title="struct actix_web::http::Version">Version</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#118-120' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the Request Version.</p>
</div><h4 id='method.path-1' class="method"><span id='path.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.path-1' class='fnname'>path</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#124-126' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>The target path of this Request.</p>
</div><h4 id='method.headers' class="method"><span id='headers.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.headers' class='fnname'>headers</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/http/header/struct.HeaderMap.html" title="struct actix_web::http::header::HeaderMap">HeaderMap</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#130-132' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Returns Request's headers.</p>
</div><h4 id='method.peer_addr-1' class="method"><span id='peer_addr.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.peer_addr-1' class='fnname'>peer_addr</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/std/net/addr/enum.SocketAddr.html" title="enum std::net::addr::SocketAddr">SocketAddr</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#147-149' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Peer socket address</p>
<p>Peer address is actual socket address, if proxy is used in front of
actix http server, then peer address would be address of this proxy.</p>
<p>To get client connection information <code>connection_info()</code> method should
be used.</p>
</div><h4 id='method.keep_alive' class="method"><span id='keep_alive.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.keep_alive' class='fnname'>keep_alive</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#153-155' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Checks if a connection should be kept alive.</p>
</div><h4 id='method.extensions-1' class="method"><span id='extensions.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.extensions-1' class='fnname'>extensions</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.Ref.html" title="struct core::cell::Ref">Ref</a>&lt;<a class="struct" href="../actix_web/struct.Extensions.html" title="struct actix_web::Extensions">Extensions</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#159-161' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Request extensions</p>
</div><h4 id='method.extensions_mut-1' class="method"><span id='extensions_mut.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.extensions_mut-1' class='fnname'>extensions_mut</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.RefMut.html" title="struct core::cell::RefMut">RefMut</a>&lt;<a class="struct" href="../actix_web/struct.Extensions.html" title="struct actix_web::Extensions">Extensions</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#165-167' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Mutable reference to a the request's extensions</p>
</div><h4 id='method.upgrade' class="method"><span id='upgrade.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.upgrade' class='fnname'>upgrade</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#170-177' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Check if request requires connection upgrade</p>
</div><h4 id='method.connection_info-1' class="method"><span id='connection_info.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.connection_info-1' class='fnname'>connection_info</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/nightly/core/cell/struct.Ref.html" title="struct core::cell::Ref">Ref</a>&lt;<a class="struct" href="../actix_web/dev/struct.ConnectionInfo.html" title="struct actix_web::dev::ConnectionInfo">ConnectionInfo</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#180-190' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Get <em>ConnectionInfo</em> for the correct request.</p>
</div><h4 id='method.server_settings' class="method"><span id='server_settings.v' class='invisible'><table class='table-display'><tbody><tr><td><code>pub fn <a href='#method.server_settings' class='fnname'>server_settings</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/server/struct.ServerSettings.html" title="struct actix_web::server::ServerSettings">ServerSettings</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/server/message.rs.html#194-196' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Server settings</p>
</div></div>
<h2 id='implementations' class='small-section-header'>
Trait Implementations<a href='#implementations' class='anchor'></a>
</h2>
<div id='implementations-list'><h3 id='impl-HttpMessage' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="../actix_web/trait.HttpMessage.html" title="trait actix_web::HttpMessage">HttpMessage</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-HttpMessage' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#36-52' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='associatedtype.Stream' class="type"><span id='Stream.t' class='invisible'><code>type <a href='../actix_web/trait.HttpMessage.html#associatedtype.Stream' class="type">Stream</a> = <a class="struct" href="../actix_web/dev/struct.Payload.html" title="struct actix_web::dev::Payload">Payload</a></code></span></h4>
<div class='docblock'><p>Type of message payload stream</p>
</div><h4 id='method.headers-1' class="method"><span id='headers.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#tymethod.headers' class='fnname'>headers</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/http/header/struct.HeaderMap.html" title="struct actix_web::http::header::HeaderMap">HeaderMap</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#40-42' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the message headers.</p>
</div><h4 id='method.payload' class="method"><span id='payload.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#tymethod.payload' class='fnname'>payload</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/dev/struct.Payload.html" title="struct actix_web::dev::Payload">Payload</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#45-51' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Message payload stream</p>
</div><h4 id='method.content_type' class="method"><span id='content_type.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.content_type' class='fnname'>content_type</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.str.html">str</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#46-53' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Read the request content type. If request does not contain Content-Type header, empty str get returned. <a href="../actix_web/trait.HttpMessage.html#method.content_type">Read more</a></p>
</div><h4 id='method.encoding' class="method"><span id='encoding.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.encoding' class='fnname'>encoding</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;EncodingRef, <a class="enum" href="../actix_web/error/enum.ContentTypeError.html" title="enum actix_web::error::ContentTypeError">ContentTypeError</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#58-72' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Get content type encoding <a href="../actix_web/trait.HttpMessage.html#method.encoding">Read more</a></p>
</div><h4 id='method.mime_type' class="method"><span id='mime_type.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.mime_type' class='fnname'>mime_type</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://docs.rs/mime/0.3.8/mime/struct.Mime.html" title="struct mime::Mime">Mime</a>&gt;, <a class="enum" href="../actix_web/error/enum.ContentTypeError.html" title="enum actix_web::error::ContentTypeError">ContentTypeError</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#75-87' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Convert the request content type to a known mime type.</p>
</div><h4 id='method.chunked' class="method"><span id='chunked.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.chunked' class='fnname'>chunked</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, <a class="enum" href="../actix_web/error/enum.ParseError.html" title="enum actix_web::error::ParseError">ParseError</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#90-100' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Check if request has chunked transfer encoding</p>
</div><h4 id='method.body' class="method"><span id='body.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.body' class='fnname'>body</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/dev/struct.MessageBody.html" title="struct actix_web::dev::MessageBody">MessageBody</a>&lt;Self&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#132-134' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Load http message body. <a href="../actix_web/trait.HttpMessage.html#method.body">Read more</a></p>
</div><h4 id='method.urlencoded' class="method"><span id='urlencoded.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.urlencoded' class='fnname'>urlencoded</a>&lt;T:&nbsp;<a class="trait" href="https://docs.rs/serde/1.0.70/serde/de/trait.DeserializeOwned.html" title="trait serde::de::DeserializeOwned">DeserializeOwned</a>&gt;(&amp;self) -&gt; <a class="struct" href="../actix_web/dev/struct.UrlEncoded.html" title="struct actix_web::dev::UrlEncoded">UrlEncoded</a>&lt;Self, T&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#166-168' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Parse <code>application/x-www-form-urlencoded</code> encoded request's body. Return <code>UrlEncoded</code> future. Form can be deserialized to any type that implements <code>Deserialize</code> trait from serde. <a href="../actix_web/trait.HttpMessage.html#method.urlencoded">Read more</a></p>
</div><h4 id='method.json' class="method"><span id='json.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.json' class='fnname'>json</a>&lt;T:&nbsp;<a class="trait" href="https://docs.rs/serde/1.0.70/serde/de/trait.DeserializeOwned.html" title="trait serde::de::DeserializeOwned">DeserializeOwned</a>&gt;(&amp;self) -&gt; <a class="struct" href="../actix_web/dev/struct.JsonBody.html" title="struct actix_web::dev::JsonBody">JsonBody</a>&lt;Self, T&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#202-204' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Parse <code>application/json</code> encoded body. Return <code>JsonBody&lt;T&gt;</code> future. It resolves to a <code>T</code> value. <a href="../actix_web/trait.HttpMessage.html#method.json">Read more</a></p>
</div><h4 id='method.multipart' class="method"><span id='multipart.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.multipart' class='fnname'>multipart</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/multipart/struct.Multipart.html" title="struct actix_web::multipart::Multipart">Multipart</a>&lt;Self::<a class="type" href="../actix_web/trait.HttpMessage.html#associatedtype.Stream" title="type actix_web::HttpMessage::Stream">Stream</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#241-244' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Return stream to http payload processes as multipart. <a href="../actix_web/trait.HttpMessage.html#method.multipart">Read more</a></p>
</div><h4 id='method.readlines' class="method"><span id='readlines.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.HttpMessage.html#method.readlines' class='fnname'>readlines</a>(&amp;self) -&gt; Readlines&lt;Self&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpmessage.rs.html#247-249' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Return stream of lines.</p>
</div></div><h3 id='impl-Deref' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-Deref' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#54-60' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='associatedtype.Target' class="type"><span id='Target.t' class='invisible'><code>type <a href='https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html#associatedtype.Target' class="type">Target</a> = <a class="struct" href="../actix_web/struct.Request.html" title="struct actix_web::Request">Request</a></code></span></h4>
<div class='docblock'><p>The resulting type after dereferencing.</p>
</div><h4 id='method.deref' class="method"><span id='deref.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html#tymethod.deref' class='fnname'>deref</a>(&amp;self) -&gt; &amp;<a class="struct" href="../actix_web/struct.Request.html" title="struct actix_web::Request">Request</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#57-59' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Dereferences the value.</p>
</div></div><h3 id='impl-Drop' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-Drop' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#317-323' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.drop' class="method"><span id='drop.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html#tymethod.drop' class='fnname'>drop</a>(&amp;mut self)</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#318-322' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Executes the destructor for this type. <a href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></p>
</div></div><h3 id='impl-Clone' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-Clone' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#325-333' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.clone' class="method"><span id='clone.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#326-332' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div><h4 id='method.clone_from' class="method"><span id='clone_from.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self)</code></span></td><td><span class='out-of-band'><div class='ghost'></div><div class='since' title='Stable since Rust version 1.0.0'>1.0.0</div><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/clone.rs.html#130-132' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></div><h3 id='impl-FromRequest%3CS%3E' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="../actix_web/trait.FromRequest.html" title="trait actix_web::FromRequest">FromRequest</a>&lt;S&gt; for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-FromRequest%3CS%3E' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#335-343' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='associatedtype.Config' class="type"><span id='Config.t' class='invisible'><code>type <a href='../actix_web/trait.FromRequest.html#associatedtype.Config' class="type">Config</a> = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a></code></span></h4>
<div class='docblock'><p>Configuration for conversion process</p>
</div><h4 id='associatedtype.Result' class="type"><span id='Result.t' class='invisible'><code>type <a href='../actix_web/trait.FromRequest.html#associatedtype.Result' class="type">Result</a> = Self</code></span></h4>
<div class='docblock'><p>Future that resolves to a Self</p>
</div><h4 id='method.from_request' class="method"><span id='from_request.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.FromRequest.html#tymethod.from_request' class='fnname'>from_request</a>(req: &amp;<a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;, _: &amp;Self::<a class="type" href="../actix_web/trait.FromRequest.html#associatedtype.Config" title="type actix_web::FromRequest::Config">Config</a>) -&gt; Self::<a class="type" href="../actix_web/trait.FromRequest.html#associatedtype.Result" title="type actix_web::FromRequest::Result">Result</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#340-342' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Convert request to a Self</p>
</div><h4 id='method.extract' class="method"><span id='extract.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/trait.FromRequest.html#method.extract' class='fnname'>extract</a>(req: &amp;<a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;) -&gt; Self::<a class="type" href="../actix_web/trait.FromRequest.html#associatedtype.Result" title="type actix_web::FromRequest::Result">Result</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/handler.rs.html#55-57' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Convert request to a Self <a href="../actix_web/trait.FromRequest.html#method.extract">Read more</a></p>
</div></div><h3 id='impl-Debug' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-Debug' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#345-366' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.fmt' class="method"><span id='fmt.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>) -&gt; <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httprequest.rs.html#346-365' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></div><h3 id='impl-From%3C%26%27a%20HttpRequest%3CS%3E%3E' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;'a, S&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;&gt; for <a class="struct" href="../actix_web/dev/struct.HttpResponseBuilder.html" title="struct actix_web::dev::HttpResponseBuilder">HttpResponseBuilder</a></code><a href='#impl-From%3C%26%27a%20HttpRequest%3CS%3E%3E' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpresponse.rs.html#861-867' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.from' class="method"><span id='from.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(req: &amp;'a <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;) -&gt; <a class="struct" href="../actix_web/dev/struct.HttpResponseBuilder.html" title="struct actix_web::dev::HttpResponseBuilder">HttpResponseBuilder</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/httpresponse.rs.html#862-866' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Performs the conversion.</p>
</div></div><h3 id='impl-From%3C%26%27a%20HttpRequest%3CS%3E%3E-1' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;'a, S:&nbsp;'static&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;&amp;'a <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;&gt; for <a class="struct" href="../actix_web/client/struct.ClientRequestBuilder.html" title="struct actix_web::client::ClientRequestBuilder">ClientRequestBuilder</a></code><a href='#impl-From%3C%26%27a%20HttpRequest%3CS%3E%3E-1' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/client/request.rs.html#756-765' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='docblock'><p>Create <code>ClientRequestBuilder</code> from <code>HttpRequest</code></p>
<p>It is useful for proxy requests. This implementation
copies all request headers and the method.</p>
</div><div class='impl-items'><h4 id='method.from-1' class="method"><span id='from.v-1' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(req: &amp;'a <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;) -&gt; <a class="struct" href="../actix_web/client/struct.ClientRequestBuilder.html" title="struct actix_web::client::ClientRequestBuilder">ClientRequestBuilder</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/client/request.rs.html#757-764' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Performs the conversion.</p>
</div></div><h3 id='impl-RequestIdentity' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="../actix_web/middleware/identity/trait.RequestIdentity.html" title="trait actix_web::middleware::identity::RequestIdentity">RequestIdentity</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-RequestIdentity' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/middleware/identity.rs.html#101-120' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.identity' class="method"><span id='identity.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/middleware/identity/trait.RequestIdentity.html#tymethod.identity' class='fnname'>identity</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>&gt;</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/middleware/identity.rs.html#102-107' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Return the claimed identity of the user associated request or <code>None</code> if no identity can be found associated with the request. <a href="../actix_web/middleware/identity/trait.RequestIdentity.html#tymethod.identity">Read more</a></p>
</div><h4 id='method.remember' class="method"><span id='remember.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/middleware/identity/trait.RequestIdentity.html#tymethod.remember' class='fnname'>remember</a>(&amp;self, identity: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/middleware/identity.rs.html#109-113' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Remember identity.</p>
</div><h4 id='method.forget' class="method"><span id='forget.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/middleware/identity/trait.RequestIdentity.html#tymethod.forget' class='fnname'>forget</a>(&amp;self)</code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/middleware/identity.rs.html#115-119' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>This method is used to 'forget' the current identity on subsequent requests. <a href="../actix_web/middleware/identity/trait.RequestIdentity.html#tymethod.forget">Read more</a></p>
</div></div><h3 id='impl-RequestSession' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&gt; <a class="trait" href="../actix_web/middleware/session/trait.RequestSession.html" title="trait actix_web::middleware::session::RequestSession">RequestSession</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-RequestSession' class='anchor'></a></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/middleware/session.rs.html#110-117' title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><div class='impl-items'><h4 id='method.session' class="method"><span id='session.v' class='invisible'><table class='table-display'><tbody><tr><td><code>fn <a href='../actix_web/middleware/session/trait.RequestSession.html#tymethod.session' class='fnname'>session</a>(&amp;self) -&gt; <a class="struct" href="../actix_web/middleware/session/struct.Session.html" title="struct actix_web::middleware::session::Session">Session</a></code></span></td><td><span class='out-of-band'><div class='ghost'></div><a class='srclink' href='../src/actix_web/middleware/session.rs.html#111-116' title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><div class='docblock'><p>Get the session from the request</p>
</div></div></div>
<h2 id='synthetic-implementations' class='small-section-header'>
Auto Trait Implementations<a href='#synthetic-implementations' class='anchor'></a>
</h2>
<div id='synthetic-implementations-list'>
<h3 id='impl-Send' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&nbsp;=&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-Send' class='anchor'></a></span></td><td><span class='out-of-band'></span></td></tr></tbody></table></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><span class='in-band'><table class='table-display'><tbody><tr><td><code>impl&lt;S&nbsp;=&nbsp;<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>&gt; !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../actix_web/struct.HttpRequest.html" title="struct actix_web::HttpRequest">HttpRequest</a>&lt;S&gt;</code><a href='#impl-Sync' class='anchor'></a></span></td><td><span class='out-of-band'></span></td></tr></tbody></table></h3><div class='impl-items'></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd></kbd></dt><dd>Move up in search results</dd><dt><kbd></kbd></dt><dd>Move down in search results</dd><dt><kbd></kbd></dt><dd>Switch tab</dd><dt><kbd>&#9166;</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g. <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g. <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g. <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "actix_web";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>