我有一些从头开始生成图像的java代码。
我还有一个servlet根据一些参数提供图像(fyi,它是QR码生成)。
我想为此图片指定一个名称,以防有人右键单击并保存。浏览器当前将相对URL作为名称(即生成),并且没有扩展名。
你有什么想法吗?
谢谢, 亚历。
答案 0 :(得分:1)
使用漂亮的网址对图片进行编码 我想现在你正在做像
这样的事情generateServlet?product=27&query=5
相反,将其映射到
images/qr/product27_q5.png
这样,浏览器只会看到好的网址,并建议将其作为文件名。它还会更多地隐藏您的实施。
只需将您的servlet映射到images/qr/*
,然后使用正则表达式从请求的路径中提取实际参数。
您甚至可以根据提供的扩展名生成不同的图像类型:)
答案 1 :(得分:1)
resp.setContentType("image/jpg");
resp.setHeader( "Content-Disposition", "attachment; filename=\"" + your_filename + "\"" );