Blobstore API からファイルを提供するたびに、この問題に何度か直面しました。常に次のようにダウンロードされます。
serve.fileNameExtention
保存した名前のファイルを提供またはダウンロードできる方法はありますか。
つまり、someName.docx
可能であれば、ネットで調べたのですが解決策が見つからなかったので、方法を教えてください。
Blobstore API からファイルを提供するたびに、この問題に何度か直面しました。常に次のようにダウンロードされます。
serve.fileNameExtention
保存した名前のファイルを提供またはダウンロードできる方法はありますか。
つまり、someName.docx
可能であれば、ネットで調べたのですが解決策が見つからなかったので、方法を教えてください。
ヘッダーに設定します:
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws IOException {
BlobKey blobKey = new BlobKey(req.getParameter("blob-key")); //example
String filename = "someName.docx";
res.setHeader("Content-Disposition", "attachment; filename=\"" +fileName +\"");
blobstoreService.serve(blobKey, res);
}
BlobKey blobKey = new BlobKey(key);
BlobInfo blobInfo = new BlobInfoFactory().loadBlobInfo(blobKey);
// set response header
response.setContentType(blobInfo.getContentType());
response.setHeader("Content-Disposition", "filename=" + blobInfo.getFilename());
// serve blob
blobService.serve(blobKey, response);
ファイルを提供している URL のファイル名を変更する必要があります。urlRewriteFilter (https://code.google.com/p/urlrewritefilter/) のようなものを使用して URL を書き換えて、「サーブ」サーブレットを引き続き使用できるようにすることができますが、サーブレットから出る途中で URL を次のように変更します。あなたが望むものは何でも。