mirror of
https://github.com/chanzuckerberg/cellxgene.git
synced 2026-09-30 08:38:11 +08:00
Fixes from frontend/backend url separation (#1829)
* Fixes from frontend/backend url separation This fixes the CORS and CSP headers. Also, in thie commit, I removed the cors_supports_credentials config parameter, which was recently introduced. Instead, the logic determines the need to use CORS headers if the web_page_url is set. #1778
This commit is contained in:
@@ -435,7 +435,6 @@ class ServerConfig(BaseConfig):
|
||||
self.app__generate_cache_control_headers = dc["app"]["generate_cache_control_headers"]
|
||||
self.app__server_timing_headers = dc["app"]["server_timing_headers"]
|
||||
self.app__csp_directives = dc["app"]["csp_directives"]
|
||||
self.app__cors_supports_credentials = dc["app"]["cors_supports_credentials"]
|
||||
self.app__api_base_url = dc["app"]["api_base_url"]
|
||||
self.app__web_base_url = dc["app"]["web_base_url"]
|
||||
|
||||
@@ -506,7 +505,6 @@ class ServerConfig(BaseConfig):
|
||||
self.check_attr("app__flask_secret_key", (type(None), str))
|
||||
self.check_attr("app__generate_cache_control_headers", bool)
|
||||
self.check_attr("app__server_timing_headers", bool)
|
||||
self.check_attr("app__cors_supports_credentials", bool)
|
||||
self.check_attr("app__csp_directives", (type(None), dict))
|
||||
self.check_attr("app__api_base_url", (type(None), str))
|
||||
self.check_attr("app__web_base_url", (type(None), str))
|
||||
@@ -758,6 +756,8 @@ class ServerConfig(BaseConfig):
|
||||
def get_api_base_url(self):
|
||||
if self.app__api_base_url == "local":
|
||||
return f"http://{self.app__host}:{self.app__port}"
|
||||
if self.app__api_base_url and self.app__api_base_url.endswith("/"):
|
||||
return self.app__api_base_url[:-1]
|
||||
return self.app__api_base_url
|
||||
|
||||
def get_web_base_url(self):
|
||||
@@ -765,7 +765,9 @@ class ServerConfig(BaseConfig):
|
||||
return f"http://{self.app__host}:{self.app__port}"
|
||||
if self.app__web_base_url is None:
|
||||
return self.get_api_base_url()
|
||||
return self.app__web_base_url
|
||||
if self.app__web_base_url.endswith("/"):
|
||||
return self.app__web_base_url[:-1]
|
||||
return self.api__web_base_url
|
||||
|
||||
|
||||
class DatasetConfig(BaseConfig):
|
||||
|
||||
@@ -14,11 +14,6 @@ server:
|
||||
server_timing_headers: false
|
||||
csp_directives: null
|
||||
|
||||
# CORS: Cross Origin Resource Sharing. If true, this allow users to make
|
||||
# authenticated requests. This allows cookies and credentials to be submitted
|
||||
# across domains
|
||||
cors_supports_credentials: false
|
||||
|
||||
# By default, cellxgene will serve api requests from the same base url as the webpage.
|
||||
# In general api_base_url and web_base_url will not need to be set.
|
||||
# There are two reasons to set these parameters:
|
||||
|
||||
Reference in New Issue
Block a user