这是我的TinyMCE配置的一部分:
@RequestMapping(value = { "/pharmacylist" }, method = RequestMethod.GET)
public String listUsers(ModelMap model) {
List<PharmacyMaster> pharmacyMaster = pharmacyService.findAllPharmacyMasters();
model.addAttribute("pharmacyMaster", pharmacyMaster);
model.addAttribute("loggedinuser", getPrincipal());
return "pharmacy/pharmacylist";
}
@RequestMapping(value = { "/edit-pharmacy-{row_id}" }, method = RequestMethod.POST)
public String updatePharmacyMaster(@Valid PharmacyMaster pharmacyMaster,
BindingResult result, ModelMap model, @PathVariable int row_id) {
/* checking the pharmacy form have any error. */
if (result.hasErrors()) {
return "/pharmacy/addpharmacy";
}
pharmacyMaster.setModifiedDate(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
pharmacyService.updatePharmacyMaster(pharmacyMaster);
model.addAttribute("success", "pharmacy " + pharmacyMaster.getPharmacyName()
+ " updated successfully");
model.addAttribute("loggedinuser", getPrincipal());
return "/pharmacy/pharmacylist";
}
当我通过简单药物添加照片并删除TineMCE时,本地图像将显示为Blob编码图像。 我想编码到base64。什么都找不到。只有这个:
{
...
plugins: 'code paste',
paste_data_images: true,
...
}
我该怎么办?
答案 0 :(得分:1)
当这些图像被发送到服务器时,它们确实是Base64编码的图像。当内容粘贴/拖动到编辑器中时,浏览器只会显示blob URL。
如果您查看此文档页面,它概述了将图像粘贴/拖动到编辑器中时可以配置的TinyMCE:
https://www.tinymce.com/docs/advanced/handle-async-image-uploads/
当TinyMCE将服务器端代码发送到服务器时,您需要服务器端代码来处理映像。大多数人不需要为客户端编写自己的图像处理代码 - 您只需配置images_upload_url
参数即可告诉编辑器将文件发送到何处:
https://www.tinymce.com/docs/configure/file-image-upload/#images_upload_url
真正的工作是你在上传文件后对该文件做了什么 - 你需要编写的服务器端代码来处理Base64图像并将其存储在你的服务器上。然后返回JSON,告诉TinyMCE为图像的src
属性输入什么。
此处介绍了上传图片后的操作流程:
https://www.tinymce.com/docs/advanced/handle-async-image-uploads/#imageuploaderrequirements