gpt4 book ai didi

rest - 如何使用 Dart http 库中的 StreamedRequest 上传文件?

转载 作者:可可西里 更新时间:2023-11-01 16:29:34 27 4
gpt4 key购买 nike

我想通过非multipart/form-data 请求上传文件,如下所示:

POST http://127.0.0.1/upload
Cache-Control: no-cache

< /path/to/file/in/disk

(我进行了测试,它成功地将一个文件从 JetBrain Rider 的 REST 客户端上传到了我的 REST 端点。)

有一个StreamedRequest http 包中的类,但我没有找到任何构造函数或 setter 来将字节流或文件内容插入其中。

如何使用 StreamedRequest 在 Dart 中上传文件?

最佳答案

我将发布 phqb 的解决方案以防 pastebin 链接失效:

final file = new File(filePath);

final streamedRequest =
new http.StreamedRequest('POST', Configurations.getUserContentsApiUri('/upload'))
..headers.addAll({
'Cache-Control': 'no-cache',
'Authorization': 'Bearer $uploadToken',
});
streamedRequest.contentLength = await file.length();
file.openRead().listen((chunk) {
print(chunk.length);
streamedRequest.sink.add(chunk);
}, onDone: () {
streamedRequest.sink.close();
});

await streamedRequest.send();
print('after response');

关于rest - 如何使用 Dart http 库中的 StreamedRequest 上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51195648/

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