3

我有一些从头开始生成图像的 java 代码。

我还有一个根据某些参数提供图像的 servlet(仅供参考,它是 QR 码生成)。

我想为此图像指定一个名称,以防有人右键单击并保存它。浏览器目前以相对 URL 作为名称(即生成),并且没有扩展名。

你有什么主意吗 ?

谢谢,亚历克西斯。

4

2 回答 2

1
    resp.setContentType("image/jpg");
    resp.setHeader( "Content-Disposition", "attachment; filename=\"" + your_filename + "\"" );
于 2011-06-28T08:09:54.130 回答
1

使用一个不错的 url 来编码你的图像。
我想现在你正在做类似的事情

generateServlet?product=27&query=5

相反,将其映射到

images/qr/product27_q5.png

这样,浏览器只会看到漂亮的 url 并建议将其作为文件名。它还更多地隐藏了您的实现。

只需将您的 servlet 映射到images/qr/*然后使用正则表达式从请求的路径中提取实际参数。

您甚至可以根据提供的扩展名生成不同的图像类型 :)

于 2011-06-28T08:07:01.650 回答