Flutter Dart base64解码

Flutter Dart base64解码,flutter,dart,Flutter,Dart,这是我的base64编码字符串: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiJkMjNiN2ViMy03MDgyLTRkZDktOGQ0OC1lMjU2YTM3OTNiOTciLCJyZWZyZXNoVG9rZW4iOiJiN2M3MTc4Yi04OWRjLTQxMDctYjUzNC1hOGZiOTNhMzEwNzAiLCJuYW1lIjoiTGVuIiwiaWF0IjoxNTczMDI4MjU2fQ 使用它可以正确解码 但是

这是我的base64编码字符串:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiJkMjNiN2ViMy03MDgyLTRkZDktOGQ0OC1lMjU2YTM3OTNiOTciLCJyZWZyZXNoVG9rZW4iOiJiN2M3MTc4Yi04OWRjLTQxMDctYjUzNC1hOGZiOTNhMzEwNzAiLCJuYW1lIjoiTGVuIiwiaWF0IjoxNTczMDI4MjU2fQ
使用它可以正确解码 但是当尝试使用base64.decode'-Base64String-;在《颤栗》中,它给了我这些错误

FormatException: Invalid character (at character 37)
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzZXNzaW9uSWQiOiIzYWNiNzBjZS0wYzYxLT...
当移除前的字符串时。我只需要后面的信息。 我得到这个错误

FormatException: Invalid length, must be multiple of four (at character 183)
...jLTQxMDctYjUzNC1hOGZiOTNhMzEwNzAiLCJuYW1lIjoiTGVuIiwiaWF0IjoxNTczMDI4MjU2fQ
是否有其他方法可以解码Dart的base64编码字符串使用此

这将帮助您像jwt.io一样解码,您可以先使用base64.normalize

例如:

导入“dart:convert”; 真空总管{ 最终字符串b64='eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.EYJZZZAW9USWQIOIJKMJNIN2VIMY03MDGYLTRKZDKTOGQ0OC1LMJU2YTm3OTNIOTCLJZWZYZXNOVG9RZW4IIYIN2M3MTC4YI04OWRJLTQMDCZMJZYZZZZZZZYZZZZYZNC1HOGZIZIN2FYOTHJU2FQ'; 字符串foo=b64.split'.[0]; List res=base64.decodebase64.normalizefo; printutf8.decoderes; } 结果:

{"alg":"HS256","typ":"JWT"}

试试看。这对你有帮助

Center(child: 
Image.memory(
base64Decode(image6464.substring(23).replaceAll("\n", ""))
 )
),

我使用jose包来处理JWT,也许你可以尝试一下,如果你想自己解析它,可以拆分字符串。字符,然后对各个部分进行base64解码。然后UTF-8和JSON对这些部分进行解码以获得原始数据。请解释您的代码的作用以及它是如何实现的。