javascript - 使用 javascript 在 html 页面中显示 blob 图像
问题描述
我在 mysql 表中有以下照片字段,我需要在 html 页面中显示它。该字段的值类似于:0xFFD8FFE1127645786966000049492A00080000000C0000010300...
我尝试了以下方法将其显示在数据表中:
columns: [
{data: 'card_id', name: 'card_id'},
{data: 'card_number', name: 'card_number'},
{data: 'name_dr', name: 'name_dr'},
{data: 'fname_dr', name: 'fname_dr'},
{data: 'position_dr', name: 'position_dr'},
{data: 'dept_dr', name: 'dept_dr'},
{data: 'employee_code', name: 'employee_code'},
{data: 'photo', name: 'photo'},
],
columnDefs: [
{ targets: 7,
render: function(data) {
//var img = 'data:image/jpeg;base64,'+base64_encode(data);
var img = 'data:image/jpeg;base64,'+btoa(data);
//const blobUrl = URL.createObjectURL(img);
return '<img src="'+img+'">'
}
}
但它不起作用,我在控制台中得到一个无效的图像 URL。请帮帮我!
更新:
由于 base64_encode() 是一个 php 函数,我使用 btoa() 但我只得到一个图像图标而不是真实图像。
解决方案
您需要 FileReader 才能将 blob 转换为 bas64。
推荐阅读
- azure-active-directory - 第一次 Microsoft Graph API 请求上的 Authorization_IdentityNotFound,
- ios - 隐藏视图后隐藏 UIButton(以编程方式添加)
- kubernetes - 如何标记某个k8s集群下创建的资源
- gitlab - 为组和子组中的项目/存储库创建列表?
- javascript - Vue如何匹配查询路由
- javascript - 我如何询问取决于第一个 firebase 响应 next.js 的 firestore 请求
- excel - 是否可以像在 Excel 中一样合并数据透视表列 OBIEE 12c 的单元格?
- python - 部署网站时遇到mysql问题
- c - C中的结构(将值分配到结构数组中)
- java - xgBoost的java实现中的响应变量?