如何使用 GWT 将短字符串编码/解码为 Base64?

2022-09-03 13:27:46

我需要在GWT中将短字符串编码为base 64,并在服务器上解码base 64字符串。有人为此有实用程序类或库吗?


答案 1

您可以在除 IE ≤ 9 之外的所有浏览器的客户端上使用本机 JavaScript。在服务器上,您可以使用其中一个官方类

Java/GWT:

private static native String b64decode(String a) /*-{
  return window.atob(a);
}-*/;

编码为 。btoa


答案 2

您可以使用 Guava 提供的 BaseEncoding 类。

http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/io/BaseEncoding.html

例如:

try {
  String encoded = BaseEncoding.base64().encode("foo".getBytes("UTF-8"))
} catch (UnsupportedEncodingException e) {
  GWT.log(e.getMessage());
}

不要忘记将以下行添加到GWT模块XML中:

<inherits name="com.google.common.io.Io"/>

BaseEncoding 类可以在 GWT 客户端和服务器端使用。


推荐