What is the difference between UseStaticFiles, UseSpaStaticFiles, and UseSpa in ASP.NET Core 2.1? : <p>ASP.NET Core 2.1.1 offers several seemingly related extension methods for appBuilder:</p>

<ul>
<li><code>UseStaticFiles</code> from <code>Microsoft.AspNetCore.StaticFiles</code></li>
<li><code>UseSpaStaticFiles</code> from <code>Microsoft.AspNetCore.SpaServices.Extensions</code></li>
<li><code>UseSpa</code> from <code>Microsoft.AspNetCore.SpaServices.Extensions</code></li>
</ul>

<p><strong>Please help me make sense of their purpose and relation to each other?</strong></p>

<p>Also, is there any difference from the server execution standpoint if I run these methods in a different order (e.g. <code>app.UseStaticFiles() -&gt; app.UseSpaStaticFiles() -&gt; app.UseSpa()</code> vs <code>app.UseSpa() -&gt; app.UseSpaStaticFiles() -&gt; app.UseStaticFiles()</code>)?</p>
