在TMS Web Core中使用Delphi将字符串编码为Base64

Encode String to Base64 using Delphi in TMS Web Core

提问人:Shaun Roselt 提问时间:10/9/2023 更新时间:10/11/2023 访问量:107

问:

在 FMX 中,我可以在 Delphi 中使用该单元对 Base64 字符串进行编码和解码,但该单元似乎在 TMS Web Core 中不可用:System.NetEncoding

[错误] uMain_web.pas(29):找不到单元“System.NetEncoding”

TMS Web Core用于解码/编码Base64的替代方案是什么?System.NetEncoding

Delphi Encoding Base64 解码 tms-web-core

评论


答:

0赞 Shaun Roselt 10/9/2023 #1

很遗憾,不适用于 TMS Web Core。System.NetEncoding

在TMS Web Core中,您可以使用和。 编码和解码。window.btoa()window.atob()btoaatob

var
  EncodedString: String;
  DecodedString: String;
begin
  EncodedString := window.btoa('Shaun Roselt'); // Encode String to Base64
  DecodedString := window.atob('U2hhdW4gUm9zZWx0'); // Decode Base64 String
end;
-1赞 biznow 10/10/2023 #2

我们可以在 TMS Web Core v2.3.0.0 中使用:System.NetEncoding

uses 
  System.NetEncoding;

procedure TForm1.WebButton1Click(Sender: TObject);
var
  Encoded, Decoded: String;
  Coder: TBase64Encoding;
begin
  Coder := TBase64Encoding.Create;
  Encoded := Base64Encoding.Encode('Shaun Roselt');
  Decoded := Base64Encoding.Decode(Encoded);
  Coder.Free;
end;

评论

0赞 Shaun Roselt 10/22/2023
事实并非如此。我在 v2.3.0.0 和 v2.3.1.0 上对其进行了测试。我仍然收到错误。你能添加你在 v2.3.0.0 中看到的添加的来源吗?can't find unit "System.NetEncoding"System.NetEncoding