使用NEOLOAD时遇到相同的问题,因此
在Auth POST之前包含了以下脚本。
// Get variable value from VariableManagervar doLoginIDString = context.variableManager.getValue("doLoginID");if (doLoginIDString==null) { context.fail("Variable 'doLoginID' not found");}logger.debug("doLoginIDString="+doLoginIDString);var rsa = new RSAKey();rsa.setPublic(doLoginIDString,'10001');var res = rsa.encrypt('<USER_PASSWORD>');logger.debug("encrypted_var= "+res);if (res) { context.variableManager.setValue("crypted_Password",res);}VariableManager是一个NEOLOAD变量管理器:)
“ doLoginID”是我根据服务器传递的字符串创建的变量,以供您使用密码进行加密。该字符串可以在
LoginPage的源代码中找到。
“ crypted_Password”是我为POST加密参数创建的变量。
当您访问登录页面时,从服务器下载的.js文件中包含RSAKey(),setPublic()和crypto()。我只是将这些文件包含在我的项目的库中,并且可以正常工作。
我不知道JMeter是否相同,但是希望这可以帮助您了解需要做的事情。



