我有一个Base64编码的文件,可以是PDF文件或图像.我想在HTML5页面中创建一个按钮,在新选项卡中打开此base64(或者新页面无关紧要)
我发现这段代码可以解决问题:
<a href="http://chriscoyier.net"
onclick="window.open(this.href); return false;"
onkeypress="window.open(this.href); return false;">
This link will open in new window/tab
</a>Run Code Online (Sandbox Code Playgroud)
它运作良好.但是当我用http替换http链接时
href="data:application/octet-stream;base64,/9j/4A.."
Run Code Online (Sandbox Code Playgroud)
然后下载文件但不在浏览器中显示.
我该怎么做?
谢谢
我正在尝试使用Jersey实现文件上传,所以我按照这个例子:http: //www.mkyong.com/webservices/jax-rs/file-upload-example-in-jersey/ ,它与HTML页面配合得很好.现在我将它改编为我的应用程序,这里是代码:
public Response uploadFile(
@FormDataParam("file") InputStream uploadedInputStream,
@FormDataParam("file") FormDataContentDisposition fileDetail)
throws IOException {
Response.Status respStatus = Response.Status.OK;
if (fileDetail == null) {
respStatus = Response.Status.INTERNAL_SERVER_ERROR;
} else {
try {
initPath();
if (fileDetail.getSize() > OntoWebStudioUtil
.getUploadFileLimit()) {
respStatus = Response.Status.NOT_ACCEPTABLE;
return Response.status(respStatus).build();
}
writeToFile(uploadedInputStream, tempDirectory);
} catch (Exception e) {
respStatus = Response.Status.INTERNAL_SERVER_ERROR;
e.printStackTrace();
}
}
return Response.status(respStatus).build();
}
Run Code Online (Sandbox Code Playgroud)
但是使用调试视图,一旦我上传了我的图片并按下按钮发送然后到达此处,uploadInputStream和fileDetail为null.所以我无能为力......我是Servlet的初学者,然后是REST,所以请放纵.
谢谢.