Automated deployment: Wed Nov 27 08:52:04 UTC 2019 d5b249e90b

This commit is contained in:
frankie567
2019-11-27 08:52:04 +00:00
parent 4e698b293c
commit d2c02c8b0b
8 changed files with 60 additions and 60 deletions

View File

@@ -580,28 +580,28 @@
</div>
<h2 id="get_current_user"><code>get_current_user</code><a class="headerlink" href="#get_current_user" title="Permanent link">&para;</a></h2>
<p>Get the current user (<strong>active or not</strong>). Will throw a <code>401 Unauthorized</code> if missing or wrong credentials.</p>
<div class="codehilite"><pre><span></span><span class="nd">@app.get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">)</span>
<div class="codehilite"><pre><span></span><span class="nd">@app</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">protected_route</span><span class="p">(</span><span class="n">user</span><span class="p">:</span> <span class="n">User</span> <span class="o">=</span> <span class="n">Depends</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_current_user</span><span class="p">)):</span>
<span class="k">return</span> <span class="n">f</span><span class="s1">&#39;Hello, {user.email}&#39;</span>
<span class="k">return</span> <span class="sa">f</span><span class="s1">&#39;Hello, </span><span class="si">{user.email}</span><span class="s1">&#39;</span>
</pre></div>
<h2 id="get_current_active_user"><code>get_current_active_user</code><a class="headerlink" href="#get_current_active_user" title="Permanent link">&para;</a></h2>
<p>Get the current active user. Will throw a <code>401 Unauthorized</code> if missing or wrong credentials or if the user is not active.</p>
<div class="codehilite"><pre><span></span><span class="nd">@app.get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">)</span>
<div class="codehilite"><pre><span></span><span class="nd">@app</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">protected_route</span><span class="p">(</span><span class="n">user</span><span class="p">:</span> <span class="n">User</span> <span class="o">=</span> <span class="n">Depends</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_current_active_user</span><span class="p">)):</span>
<span class="k">return</span> <span class="n">f</span><span class="s1">&#39;Hello, {user.email}&#39;</span>
<span class="k">return</span> <span class="sa">f</span><span class="s1">&#39;Hello, </span><span class="si">{user.email}</span><span class="s1">&#39;</span>
</pre></div>
<h2 id="get_current_superuser"><code>get_current_superuser</code><a class="headerlink" href="#get_current_superuser" title="Permanent link">&para;</a></h2>
<p>Get the current superuser. Will throw a <code>401 Unauthorized</code> if missing or wrong credentials or if the user is not active. Will throw a <code>403 Forbidden</code> if the user is not a superuser.</p>
<div class="codehilite"><pre><span></span><span class="nd">@app.get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">)</span>
<div class="codehilite"><pre><span></span><span class="nd">@app</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">protected_route</span><span class="p">(</span><span class="n">user</span><span class="p">:</span> <span class="n">User</span> <span class="o">=</span> <span class="n">Depends</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_current_superuser</span><span class="p">)):</span>
<span class="k">return</span> <span class="n">f</span><span class="s1">&#39;Hello, {user.email}&#39;</span>
<span class="k">return</span> <span class="sa">f</span><span class="s1">&#39;Hello, </span><span class="si">{user.email}</span><span class="s1">&#39;</span>
</pre></div>
<h2 id="in-path-operation">In path operation<a class="headerlink" href="#in-path-operation" title="Permanent link">&para;</a></h2>
<p>If you don't need a user, you can use more clear way:</p>
<div class="codehilite"><pre><span></span><span class="nd">@app.get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">,</span> <span class="n">dependencies</span><span class="o">=</span><span class="p">[</span><span class="n">Depends</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_current_superuser</span><span class="p">)])</span>
<div class="codehilite"><pre><span></span><span class="nd">@app</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;/protected-route&#39;</span><span class="p">,</span> <span class="n">dependencies</span><span class="o">=</span><span class="p">[</span><span class="n">Depends</span><span class="p">(</span><span class="n">fastapi_users</span><span class="o">.</span><span class="n">get_current_superuser</span><span class="p">)])</span>
<span class="k">def</span> <span class="nf">protected_route</span><span class="p">():</span>
<span class="k">return</span> <span class="s1">&#39;Hello, some user.&#39;</span>
</pre></div>

View File

@@ -775,7 +775,7 @@
<p>Login a user.</p>
<div class="admonition abstract">
<p class="admonition-title">Payload (<code>application/x-www-form-urlencoded</code>)</p>
<div class="codehilite"><pre><span></span><span class="n">username</span><span class="o">=</span><span class="n">king</span><span class="p">.</span><span class="n">arthur</span><span class="nv">@camelot</span><span class="p">.</span><span class="n">bt</span><span class="o">&amp;</span><span class="n">password</span><span class="o">=</span><span class="n">guinevere</span><span class="w"></span>
<div class="codehilite"><pre><span></span><span class="err">username=king.arthur@camelot.bt&amp;password=guinevere</span>
</pre></div>
</div>