问题
From this string we get from DataURL, what's the best way to download this as a file?
So far what I got was using a basic window.open("myDataURL");
, but I'm not able to change the file name in this way.
window.open('data:application/msword;base64,0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAA
PgADAP7/CQAGAAAAAAAAAAAAAAACAAAANQAAAAAAA
AAAEAAANwAAAAIAAAD+////AAAAADQAAABsAA/',
'_blank','height=300,width=400');
I was wondering if there's any way to handle this data properly.
回答1:
you can add a download attribute to the anchor element. sample:
<a download="abcd.zip" href="data:application/stream;base64,MIIDhTCCAvKg........">download</a>
回答2:
Try this:
data:application/msword;fileName=test.doc;base64,0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAACAAAANQAAAAAAAAAAEAAANwAAAAIAAAD+////AAAAADQAAABsAA/
But this is just a guess from googling around and might be browser-dependent. The real answer to this is, you can't - See http://www.ietf.org/rfc/rfc2397 for reference, there's nothing in the specification to support a filename.
来源:https://stackoverflow.com/questions/8792616/downloading-file-from-dataurl-in-javascript