gpt4 book ai didi

file - Dart 和客户端文件处理(授权)

转载 作者:行者123 更新时间:2023-12-03 02:57:37 25 4
gpt4 key购买 nike

服务器端应用程序需要对文件下载链接进行授权。这意味着正常 <a ng-href="{{createLinkToFile()}}">不再足以将足够的参数传递给服务器。

当尝试使用程序调用文件下载时,我将响应数据返回给 Dart 客户端应用程序。使用简单的 http GET:

    var url = "http://example.com/file";
headers.putIfAbsent("Authorization", () => "bearer " + token;
_http.get(url: url, headers : headers);

GET 返回的 future 将保存数据,但我如何指示浏览器将其下载为文件,而不是仅仅试图将其保存在内存中?

或者有什么方法可以在普通链接中做到这一点?

最佳答案

从服务器下载数据后,如 Using Dart to Download a PNG File (Binary File) and displaying it not working 所示您可以创建一个下载链接,如 http://blog.butlermatt.me/2014/03/dynamically-generating-download-files/ 所示

import 'dart:html';
void main() {
List body = [ 'Some test data ...\n'];

// Create a new blob from the data.
Blob blob = new Blob(body, 'text/plain', 'native');
// Create a data:url which points to that data.
String url = Url.createObjectUrlFromBlob(blob);
// Create a link to navigate to that data and download it.
AnchorElement link = new AnchorElement()
..href = url
..download = 'random_file.txt'
..text = 'Download Now!';

// Insert the link into the DOM.
var p = querySelector('#text');
p.append(link);
}

关于file - Dart 和客户端文件处理(授权),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29674913/

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