在jmeter安装jmeter插件(JMeter Plugins Manager)并且添加 Custom JMeter Functions(Documentation :: JMeter-Plugins.org)后就可以获得__base64Encode和__base64Decode两个函数
然而这两个函数的编码都是gbk而不是utf-8,如果encode前内容中包含中文的话,需要decode方也是用gbk编码进行decode,否则会出现乱码
因此需要使用另一种方式进行encode,以避免decode方出现中文乱码,原文:https://www.cnblogs.com/panpanda/p/15854535.html
import org.apache.commons.net.util.Base64;
String source = "{\"admin\":false,\"company\":\"osc\",\"companyIdentity\":\"COMPANY_OWNER\",\"displayName\":\"osc-admin\",\"email\":\"osc-admin@test.com\",\"id\":\"1\",\"sAMAccountName\":\"osc-admin\",\"status\":\"SUCCESS\",\"uSNCreated\":\"1\",\"userPrincipalName\":\"osc-admin@test.com\",\"username\":\"osc-admin\"}";
byte[] encodedBytes = Base64.encodeBase64(source.getBytes("UTF-8"));
String encoded = new String(encodedBytes);
vars.put("sessionToken", encoded);