Datasette plugin for configuring CORS headers
Project description
datasette-cors
Datasette plugin for configuring CORS headers, based on https://github.com/simonw/asgi-cors
You can use this plugin to allow JavaScript running on a whitelisted set of domains to make fetch()
calls to the JSON API provided by your Datasette instance.
Installation
pip install datasette-cors
Configuration
You need to add some configuration to your Datasette metadata.json
file for this plugin to take effect.
To whitelist specific domains, use this:
{
"plugins": {
"datasette-cors": {
"hosts": ["https://www.example.com"]
}
}
}
You can also whitelist patterns like this:
{
"plugins": {
"datasette-cors": {
"host_wildcards": ["https://*.example.com"]
}
}
}
Testing it
To test this plugin out, run it locally by saving one of the above examples as metadata.json
and running this:
$ datasette --memory -m metadata.json
Now visit https://www.example.com/ in your browser, open the browser developer console and paste in the following:
fetch("http://127.0.0.1:8001/:memory:.json?sql=select+sqlite_version%28%29").then(r => r.json()).then(console.log)
If the plugin is running correctly, you will see the JSON response output to the console.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file datasette_cors-0.3-py3-none-any.whl
.
File metadata
- Download URL: datasette_cors-0.3-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7cb6425d3b2806b3bcde72c23fc84f5b2402517d8655e0cd63cf0d5ef371f9a |
|
MD5 | 0c0f962f049abc5187feb658b0038915 |
|
BLAKE2b-256 | 1eda85322a300c5503284c652acb0b067cdf293a1ba9fc90fa656eee987f1987 |