CORS、SQLite 和 JavaScript。有什么方法可以在没有本地服务器的情况下访问实际数据库?
CORS, SQLite and JavaScript. Any way to access the actual database without a local server?
我刚刚发现了 SQLite 的美妙之处,我正试图让它在没有服务器的情况下在本地 HTML 文件上工作,只是简单的 JavaScript.
SQLite wiki 指出本地数据库是 'get' 通过 XMLHttpRequest
var xhr = new XMLHttpRequest();
xhr.open('GET', '/path/to/database.sqlite', true);
但我不能,因为它是跨源请求。我在尝试读取 CSV 文件时遇到了类似的问题,我通过使用文件输入然后将文件转发以进行解析来解决它。
我尝试做同样的事情,而不是传递 /path/to/database.sqlite
只是传递实际文件。但是没用。
有没有办法在没有本地服务器且不破坏浏览器安全规则的情况下进行这项工作?
@YarGnawh 喜欢这样 C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --allow-access-from-files
?我还是一样 XMLHttpRequest cannot load file:///C:/BOVESPA2014.sqlite. Cross origin requests are only supported for protocol schemes: http, data, chrome-extension, https, chrome-extension-resource.
好吧,我找到的最佳解决方案就是简单地使用 nw。
我刚刚发现了 SQLite 的美妙之处,我正试图让它在没有服务器的情况下在本地 HTML 文件上工作,只是简单的 JavaScript.
SQLite wiki 指出本地数据库是 'get' 通过 XMLHttpRequest
var xhr = new XMLHttpRequest();
xhr.open('GET', '/path/to/database.sqlite', true);
但我不能,因为它是跨源请求。我在尝试读取 CSV 文件时遇到了类似的问题,我通过使用文件输入然后将文件转发以进行解析来解决它。
我尝试做同样的事情,而不是传递 /path/to/database.sqlite
只是传递实际文件。但是没用。
有没有办法在没有本地服务器且不破坏浏览器安全规则的情况下进行这项工作?
@YarGnawh 喜欢这样 C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --allow-access-from-files
?我还是一样 XMLHttpRequest cannot load file:///C:/BOVESPA2014.sqlite. Cross origin requests are only supported for protocol schemes: http, data, chrome-extension, https, chrome-extension-resource.
好吧,我找到的最佳解决方案就是简单地使用 nw。