我更大的问题是我想使用HTML5拖放来允许通过CORS将图像上传到我的S3存储桶.我能够在S3中得到一些东西,但它总是最终看起来像是base64编码的内容.
myFileReader.readAsArrayBuffer(f);
//[...]
function on_onload(file_name, file_type, file_data) {
// file_name and file_type are bound to the function via a closure,
// file_data is passed in during the actual callback invocation.
var xhr = new XMLHttpRequest();
var fd = new FormData();
// code that sets AWS credentials for fd omitted
// _arrayBufferToBase64() just does a binary to base64 conversion
// as described in https://stackoverflow.com/questions/9267899/arraybuffer-to-base64-encoded-string
fd.append('file', _arrayBufferToBase64(file_data));
xhr.open('POST', my_aws_bucket_endpoint, true);
xhr.send(fd);
}
Run Code Online (Sandbox Code Playgroud)
_arrayBufferToBase64()只是这个答案的循环代码.
尝试上传后foo.jpg:
$ wget [my_uri]/foo.jpg …Run Code Online (Sandbox Code Playgroud) 我有一个具有文本输入和文件输入的表单.无论如何推送套接字提交?
如果我这样添加它
params.image = $("#new_post_image")[0].files[0]
Run Code Online (Sandbox Code Playgroud)
我的参数在频道中看起来像这样
%{image: %{}, title: "image title"}
Run Code Online (Sandbox Code Playgroud) 我正在努力尝试将给定的图像 url 转换为 base64 ......在我的情况下,我有一个带有图像路径的字符串
var imgUrl = `../../../../../assets/logoEmpresas/${empresa.logoUrl}`
Run Code Online (Sandbox Code Playgroud)
我怎样才能直接在 base64 中转换给定的图像 url?...我试过这篇文章。
但是这篇文章是从表单中获取图像...我该如何调整它?
javascript single-page-application typescript angular angular8
我们的应用程序下载了一个zip文件,但响应是二进制的.
所以我做的是将其转换为base64.它适用于大小87.7KB但响应大小为时发生错误183KB.
错误是 Uncaught RangeError: Maximum call stack size exceeded
这条线是
btoa(String.fromCharCode.apply(null, new Uint8Array(blob)))
Run Code Online (Sandbox Code Playgroud)
根据这个答案,String.fromCharCode.apply()必须更换TextEncoder.
所以我改成了
btoa(new TextDecoder('utf-8').decode(new Uint8Array(blob)))
Run Code Online (Sandbox Code Playgroud)
但是我收到了一个错误.
Uncaught DOMException: Failed to execute 'btoa' on 'Window': The string to be encoded contains characters outside of the Latin1 range.
我使用此答案的最顶部片段再次更改了它
新代码现在
btoa(unescape(encodeURIComponent(new TextDecoder('utf-8').decode(new Uint8Array(blob)))))
Run Code Online (Sandbox Code Playgroud)
下载现在可以使用,但下载zip文件已损坏.
整个代码可以在这里看到
我正在尝试向 jsPDF 添加自定义字体。我将文件转换为 base64 并执行以下操作:
doc.addFileToVFS("font/rajdhani-regular-webfont.woff", base64enc);
Run Code Online (Sandbox Code Playgroud)
其中 base64enc 是 base64 编码的字符串
然后我添加字体如下:
doc.addFont('font/rajdhani-regular-webfont.woff', 'rajdhani', 'normal');
doc.setFont('rajdhani');
Run Code Online (Sandbox Code Playgroud)
但是,我不断收到以下错误
[Error] jsPDF PubSub Error – "No unicode cmap for font" – Error: No unicode cmap for font — jspdf.min.js:9068
Error: No unicode cmap for font — jspdf.min.js:9068registerTTF — jspdf.min.js:9068i — jspdf.min.js:9027:86open — jspdf.min.js:9032(anonymous function) — jspdf.min.js:6031publish — jspdf.min.js:308yt — jspdf.min.js:729:166addFont — jspdf.min.js:1286callme — freport.php:500onclick — freport.php:100
publish (jspdf.min.js:29:5989)
yt (jspdf.min.js:29:18435)
addFont (jspdf.min.js:29:33701)
callme (freport.php:500)
onclick (freport.php:100)
Run Code Online (Sandbox Code Playgroud)
我不知道为什么会这样。
我正在开发一个应用程序,使用 Node.js 作为后端,并作为我的前端进行反应。现在我创建了一个上传文件并将其作为缓冲区类型存储在 mongodb 中的路由。我的问题是,当我在 React 应用程序中收到这些数据时,如何使用这些数据将其转换为 html 图像标签中的源属性?当我查看 mongodb 指南针时,文件属性如下所示:(非常长的字符串)
当我查看对象本身时,当我得到它作为响应时,它看起来像这样:(数字数组);

我尝试使用
<img
src={`data:${props.images[0].mimetype};base64,${props.images[0].file.data}`}
/>
Run Code Online (Sandbox Code Playgroud)
但它没有用..
如果有人能给出答案,真的很感激!
猫鼬模型:
images: [
{
file: { type: Buffer },
filename: { type: String },
mimetype: { type: String }
}
]
Run Code Online (Sandbox Code Playgroud)
节点.js
var multer = require('multer');
var upload = multer({
limits: {
fileSize: 1000000
}
});
app.post('/upload', upload.single('file'), async (req, res) => {
try {
const file = {
file: req.file.buffer,
filename: req.file.originalname,
mimetype: req.file.mimetype
};
// console.log(req.file.buffer.toString('base64'));
const product = new …Run Code Online (Sandbox Code Playgroud) 我有以下简单的代码:
inputBytes = new TextEncoder().encode(inputString)
hashBytes = await window.crypto.subtle.digest("SHA-256", inputBytes)
console.log((typeof hashBytes) + ": " + JSON.stringify(hashBytes))
Run Code Online (Sandbox Code Playgroud)
为什么结果是空对象?我怎样才能得到真正的结果?
这太奇怪了,非常感谢任何帮助
我使用这篇文章使用JavaScript读取CSV文件.以下代码在Chrome和Firefox中运行良好,但IE 11会引发以下错误:
Object doesn't support property or method 'readAsBinaryString'
Run Code Online (Sandbox Code Playgroud)
打电话时:
reader.readAsBinaryString(blob);
Run Code Online (Sandbox Code Playgroud)
但是,根据这篇 MSDN文章,readAsBinaryString是一种支持的方法FileReader.我错过了什么/有没有不同的方式在IE 11中读取文件?
HTML代码:
<table>
<tr>
<td>Import CSV File</td>
<td><input type="file" id="files" name="file"/></td>
</tr>
</table>
<button id="read" href="#">Read</button>
Run Code Online (Sandbox Code Playgroud)
JS代码:
//read a file
function readBlob() {
var files = document.getElementById('files').files;
if (!files.length) {
alert('Please select a file!');
return;
}
var file = files[0];
var start = 0;
var stop = file.size - 1;
var reader = new FileReader();
// If we use onloadend, …Run Code Online (Sandbox Code Playgroud) 我有一个这样的Vue文件,
export default {
data(){
return{
info: {
name: '',
image: '',
},
errors: []
}
},
created: function(){
this.getInfo();
},
methods: {
getInfo: function(){
this.info.name = response.data.results[0].name;
this.info.image = response.data.results[0].image;
}
}
}Run Code Online (Sandbox Code Playgroud)
我正在将数据从该文件传递到子Vue组件中。子组件如下:
<template>
<div class="ui items">
<div class="item">
<div class="ui small image">
{{info.image}}
</div>
</div>
</div>
</template>
<script>
export default{
props:['info']
}
</script>Run Code Online (Sandbox Code Playgroud)
我的图像作为Blob存储在MySQL数据库中。当我运行应用程序时,图像在UI上显示为二进制数据。对象看起来像这样,
这里有人可以帮助我显示图像吗?非常感谢你!
我正在尝试将数组缓冲区设置为图像标签的来源。看来我有2个问题。我的控制台正在记录:
GET unsafe:data:image/jpg;base64, [object ArrayBuffer] net::ERR_UNKNOWN_URL_SCHEME
所以我的问题是:
1. 如何将我的“blob”转换为字符串?
(如有必要:2.如何删除不安全标志?)
html:
<img src="data:image/jpg;base64, {{blob}}">
Run Code Online (Sandbox Code Playgroud)
ts(传输blob):
export class ImgViewerComponent implements OnInit {
@Input('blob') blob: ArrayBuffer;
constructor() { }
ngOnInit() {
}
}
Run Code Online (Sandbox Code Playgroud) 我有一些字符串需要是一个UTF-16文本文件.例如:
var s = "aosjdfkzlzkdoaslckjznx";
var file = "data:text/plain;base64," + btoa(s);
Run Code Online (Sandbox Code Playgroud)
这将导致UTF-8编码文本文件.如何获得带字符串的UTF-16文本文件s?