1.3 KiB
Limitations From The Browser Environment: CORS Issue
The plugin is developed for the browser environment. The "fake" browser behind the scenes also follows the CORS policy.
To solve the issue, we have some options:
-
The server side needs to return the header
Access-Control-Allow-Origin
allowing the originsapp://obsidian.md
andcapacitor://localhost
andhttp://localhost
. Sometimes in the future, the headerAccess-Control-Expose-Headers
with some values being set might be also needed.Example configurations:
However, some cloud services do not allow configuring or exposing these headers. (Notably most public WebDAV services.)
It's of course possible if the users build the services by themselves.
-
Obsidian implements and exposes a new api helping developers to bypass the CORS policy.
Currently (as of Feb 2022), an api
request()
indeed exists, but it only deals with text-like data, and does not support binary data or response headers reading yet.Because this plugin allows uploading and downloading binary data, so a more feature-rich api is needed.