通过JS解码UTF-8图像(字符串)
Decoding a UTF-8 image (string) via JS
我有一个基于Angular (1.x)的应用程序,它调用Web API来获取客户数据。客户对象的属性之一是他们的图像。当我接收到对象时,图像数据是UTF-8编码的。
为了更清楚,基于c#的API是这样做的:
customer.image = Encoding.UTF8.GetString(Image);
所以图像被转换成UTF-8编码的字符串。
在客户端,我只是绑定客户。图像数据到
<img ng-src="data:image/JPEG;base64,{{customer.image}}" ... >
这在我的应用程序的其他部分工作得很好,但其他图像没有被首先编码。
我一直在寻找和寻找一种方法来解码在JS中的UTF-8编码字符串,但我遇到的每一个答案似乎在decodeURIComponent()的一些变化上工作。这对我来说不工作,因为所讨论的字符串不是URI。(我得到一个无效的URI错误)。
我如何使用JS, JQuery或Angular解码这些数据?看起来应该很简单,但也许我只是使用了错误的术语…
UTF-8只是一种字符编码,可以处理特殊字符,如丹麦字符:"æø
这基本上意味着如果你的Base64数据被正确编码,那么无论它是否是utf编码,它都是相同的。因此,从短期来看,您的问题不应该在于编码。
所以要解决你的问题,我会看看如果图像数据实际上是正确编码为Base64,最有可能的是你押注二进制数据,而不是预期的Base64,在这种情况下,你想要的是Base64编码的数据。
作为旁注,建议确保使用的所有文本/字符串都是UTF-8编码的。确保你的html, js等文件是UTF-8,确保数据库是,并确保你得到的元html标签告诉编码那里。将所有内容设置为UTF-8将使您的工作更轻松,特别是在遇到特殊字符时。
- 在字符串中查找所有图像 src URL 并存储在数组中
- 如何从 javascript 中可能具有一个或多个图像的字符串中仅获取图像名称
- JavaScript - 多参数函数,它是多个图像库的字符串
- 使用 javascript 压缩包含嵌入图像的 HTML 字符串
- 使用同位素插件,我可以按字符串名称过滤并使图像重叠吗?
- 如何将任意数量的图像动态添加到源字符串位于数据库中的 Web 窗体
- 在jQuery中更新base64图像字符串时未进行图像刷新
- base64字符串使用Node.JS被写为无效图像
- 如何使用javascript将图像转换为字符串
- 将fadeIn效果添加到图像容器超链接附加字符串中
- 使用DataURL字符串将图像上载到picasa
- 图像大小与其base64字符串转换长度之间的比率是多少
- 如何在图像源中使用字符串代替url
- 保存Canvas图像(将数据字符串发布到PHP)
- Phonegap - 如何从base64字符串生成图像文件
- 从本地存储 base64 字符串设置背景图像
- 带有 base64 字符串(数据 URI)的 HTML 图像标记
- 从没有jQuery的字符串中获取图像src
- 移动图像 ..JavaScript 将变量声明为字符串
- 如何在没有 AngularJs 编码的情况下在图像“alt”标签中使用字符串