sta*_*elp 8 javascript url null blob
blob 在开头添加了 null,例如:blob:null/72438-4637-23673-34721。但是当我使用与 src 相同的 src 时,它会显示正确的图像。
我正在使用 URL.createObjectURL 调用。我也尝试使用 webkitURL。两者都返回一个在开头附加 null 的 blob。URL 和 webkitURL 返回的 blob 值也不相同。
这是代码片段
var dataUrl = canvas.toDataURL();
// The last piece of the data URL after the comma
var byteString = atob(dataUrl.split(',')[1]);
// Populate an array buffer
var arrayBuffer = new ArrayBuffer(byteString.length);
var uint8Array = new Uint8Array(arrayBuffer);
for (var i = 0; i < byteString.length; i++) {
uint8Array[i] = byteString.charCodeAt(i);
}
var blob = new Blob([uint8Array], { type: "image/png" });
var blobVal = URL.createObjectURL(blob);
Run Code Online (Sandbox Code Playgroud)
这里的 blobVal 有“blob:null/1234-5678-9012- ...”
那是原点,文件系统和沙盒 iframe(可能是其他)的原点为 null。如果你设置了一个本地服务器,它应该说http%3A//localhost,这是http://localhosturl 编码的
var arrayBuffer = new ArrayBuffer(100);
var uint8Array = new Uint8Array(arrayBuffer);
for (var i = 0; i < 100; i++) {
uint8Array[i] = i;
}
var blob = new Blob([uint8Array], { type: "image/png" });
var blobVal = URL.createObjectURL(blob);
$('div').html(blobVal);Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div></div>Run Code Online (Sandbox Code Playgroud)
这个是http%3A//fiddle.jshell.net
http://jsfiddle.net/thsn3ayp/
| 归档时间: |
|
| 查看次数: |
11961 次 |
| 最近记录: |