aboutsummaryrefslogtreecommitdiff
path: root/Timeline/Startup.cs
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2020-06-05 16:51:42 +0800
committercrupest <crupest@outlook.com>2020-06-05 16:51:42 +0800
commite1ccc1cfe43a44e975dba3a412522f8ea5760ca4 (patch)
treea2404f848cc07669cd63879c573a5831fb2593b9 /Timeline/Startup.cs
parentae19c40c795e14e8793744b7520e103523f6bda4 (diff)
downloadtimeline-e1ccc1cfe43a44e975dba3a412522f8ea5760ca4.tar.gz
timeline-e1ccc1cfe43a44e975dba3a412522f8ea5760ca4.tar.bz2
timeline-e1ccc1cfe43a44e975dba3a412522f8ea5760ca4.zip
feat(back): Add option to use proxy to serve front end in development.
Diffstat (limited to 'Timeline/Startup.cs')
-rw-r--r--Timeline/Startup.cs14
1 files changed, 10 insertions, 4 deletions
diff --git a/Timeline/Startup.cs b/Timeline/Startup.cs
index 77b48466..35c47712 100644
--- a/Timeline/Startup.cs
+++ b/Timeline/Startup.cs
@@ -21,7 +21,6 @@ using Timeline.Services;
namespace Timeline
{
- [System.Diagnostics.CodeAnalysis.SuppressMessage("Performance", "CA1822:Mark members as static")]
public class Startup
{
private readonly bool disableFrontEnd;
@@ -91,7 +90,7 @@ namespace Timeline
options.UseSqlite($"Data Source={pathProvider.GetDatabaseFilePath()}");
});
- if (!disableFrontEnd)
+ if (!disableFrontEnd && !Environment.IsDevelopment())
{
services.AddSpaStaticFiles(config =>
{
@@ -121,7 +120,7 @@ namespace Timeline
app.UseRouting();
- if (!disableFrontEnd)
+ if (!disableFrontEnd && !Environment.IsDevelopment())
{
app.UseSpaStaticFiles(new StaticFileOptions
{
@@ -145,7 +144,14 @@ namespace Timeline
if (Environment.IsDevelopment())
{
- SpaServices.SpaDevelopmentServerMiddlewareExtensions.UseSpaDevelopmentServer(spa, packageManager: "yarn", npmScript: "install-and-start", port: 3000);
+ if (Configuration.GetValue<bool?>(ApplicationConfiguration.FrontEndProxyOnlyKey) ?? false)
+ {
+ spa.UseProxyToSpaDevelopmentServer(new UriBuilder("http", "localhost", 3000).Uri);
+ }
+ else
+ {
+ SpaServices.SpaDevelopmentServerMiddlewareExtensions.UseSpaDevelopmentServer(spa, packageManager: "yarn", npmScript: "install-and-start", port: 3000);
+ }
}
});
}