为什么Dart无法从Crystal解码base64?

问题描述

为什么Dart在Crystal Lang中使用base64会产生错误“ 61位无效字符”?

解决方法

默认的Crystal lang Base64编码在Dart或Flutter中不起作用。 这是因为默认情况下它不使用严格的编码,而是每60个字符插入换行符。 对于Dart来说,这些换行符是未知字符。 简而言之,您必须使用Crystal的Base64.strict_encode方法。这将不带特殊字符进行编码。 Dart没有忽略特殊字符的方法,因此这是使它起作用所需的100%。 https://crystal-lang.org/api/0.35.1/Base64.html#strict_encode(data,io:IO)-instance-method

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...