Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript、angular.js和sql.js,如何从url获取文件对象?_Javascript_Angularjs_Sqlite - Fatal编程技术网

使用javascript、angular.js和sql.js,如何从url获取文件对象?

使用javascript、angular.js和sql.js,如何从url获取文件对象?,javascript,angularjs,sqlite,Javascript,Angularjs,Sqlite,我正在使用查询字符串从浏览器URL获取服务器上sqlite db文件的URL 因此,在应用程序中,我有文件url 然后我在该url上调用$http.get函数 这会给我文件中的数据,但是我用来读取数据的库需要一个file对象 有没有办法从$http.get中的参数创建文件对象?参数包括数据、状态、标题和配置,我还有文件名 我已尝试构造blob,但不断收到一个错误,提示“数据库磁盘映像格式不正确”。以下是$http.get函数中的blob构造: ...

我正在使用查询字符串从浏览器URL获取服务器上sqlite db文件的URL

因此,在应用程序中,我有文件url

然后我在该url上调用$http.get函数

这会给我文件中的数据,但是我用来读取数据的库需要一个file对象

有没有办法从$http.get中的参数创建文件对象?参数包括数据、状态、标题和配置,我还有文件名

我已尝试构造blob,但不断收到一个错误,提示“数据库磁盘映像格式不正确”。以下是$http.get函数中的blob构造:

            ...
            var blob = [];
            var blob2 = {fileName:null};
            $http.get(fileName).
              success(function (data, status, headers, config) {
                blob[0] = data;

                var theBlob = new Blob(blob, {name:fileName},{status:status},{headers:headers},{config:config}, {type : ''});
                var r = new FileReader();
                r.onload = function () {                    
                    var Uints = new Uint8Array(r.result);
                    db = new SQL.Database(Uints); 
                ...
我还尝试通过添加$http.get数据、状态、标题和配置部分作为blob[]数组的更多部分来构建blob,并将其传递给新的blob构造函数


非常感谢您的帮助,谢谢

最后,我使用了一个按钮,并将LoadFromURL事件分配给它,这样我就不必构建自己的blob了。当我构建自己的blob时,sql.js无法解析我的sqlite db文件。看起来好像缺少标题,但我无法以sql.js能够正确读取的方式添加它们


对于修改后的用例,“从url加载”按钮选项可以正常工作。我甚至隐藏了按钮,除非url中有查询字符串返回的数据。这意味着要从url加载的按钮仅在url中包含查询字符串时显示

我基本上是在尝试模仿html输入类型=文件功能,但是文件名来自URL查询字符串,而不是输入标记。这里有一个stackoverflow问题,开发者放弃了,并表示这是不可能的,但社区没有任何确认: