在 App Engine 上强制下载文件

发布于 2024-09-06 06:16:03 字数 52 浏览 5 评论 0原文

我将如何强制浏览器下载媒体文件而不是尝试流式传输它们?这些是我的应用程序目录中的静态文件。

How would I go about forcing the browser to download media files instead of attempting to stream them? These are static files in my application directory.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

佞臣 2024-09-13 06:16:03

您需要修改项目中的 app.yaml,设置application/octect-stream 作为 mime_type。
检查这个例子:

- url: /download
  static_dir: static/download
  mime_type : application/octect-stream

正如评论中正确指出的那样,在下载时强制使用某种 mime_type 并不是一个好主意。
如果您的用户更愿意流式传输您的内容而不是下载它们,这是他们的决定,您不应强迫他们下载您的文件。
您可以提供两个不同的链接,一个带有流,另一个强制保存对话框。

You need to modify app.yaml in your project, setting application/octect-stream as mime_type.
Check this example:

- url: /download
  static_dir: static/download
  mime_type : application/octect-stream

As correctly stated in comment, it is not a good idea to force a certain mime_type on download.
If your users would prefer to stream your content rather than downloading them, it's their decision and you shouldn't force them to download your files.
You could provide two different links, one with stream and one forcing the save dialog.

萌逼全场 2024-09-13 06:16:03

如果你使用java那么你可以使用下面的代码。

//Set content type
resp.setContentType("text/csv" + .getContentType());

//Set header for attachement
resp.setHeader("Content-Disposition","attachment;filename=Myfile.csv");

//Retrieve file from database and convert to byte
resp.getOutputStream().write(b.getFile().getBytes());

//Close stream 
resp.getOutputStream().close();

if you are using java then you can use following code.

//Set content type
resp.setContentType("text/csv" + .getContentType());

//Set header for attachement
resp.setHeader("Content-Disposition","attachment;filename=Myfile.csv");

//Retrieve file from database and convert to byte
resp.getOutputStream().write(b.getFile().getBytes());

//Close stream 
resp.getOutputStream().close();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文