gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-28 08:02:54 25 4
gpt4 key购买 nike

我使用查询字符串从浏览器 URL 获取服务器上 sqlite 数据库文件的 URL。

所以在应用程序中我有文件网址。

然后我在该 url 上调用一个 Angular $http.get 函数。

这为我提供了文件中的数据,但我用来读取数据的库需要一个文件对象。

有没有办法从 $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 数据、状态、 header 和配置部分作为 blob[] 数组的更多部分来构建 blob,并将其传递给新的 Blob 构造函数...

任何帮助将不胜感激,谢谢!

最佳答案

我最终使用了一个按钮并将来自 url 事件的负载分配给它,这样我就不必构建自己的 blob。当我构建自己的 blob 时,sql.js 无法解析我的 sqlite 数据库文件。似乎 header 丢失了,但我无法以 sql.js 正确读取的方式添加它们。

使用修改后的用例,从 url 加载按钮选项工作正常。我什至隐藏了按钮,除非有从 url 中的查询字符串返回的数据。这意味着仅当 url 中包含查询字符串时才会显示从 url 加载的按钮。

关于javascript - 使用 javascript、angular.js 和 sql.js,如何从 url 获取文件对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25167283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com