带有特殊字符的 SoapUI Auth Header

SoapUI Auth Header with special characters

我正在使用 SoapUI 并遇到如果我将 umlauts 添加到密码中,它不会按预期工作。

这是一个例子:假设用户名 "täst" 和密码 "!23Öüok"。 SoapUI 将创建以下 Base64 编码的字符串:"Authorization: Basic dD9zdDohMjM/P29r[\r][\n]"。解码 "dD9zdDohMjM/P29r" 将导致此 "t?st:!23??ok"

是否有任何特定于 SoapUI 的设置或我遗漏的任何内容?我觉得Base64编码的String应该是这样的:"dMOkc3Q6ITIzw5bDvG9r"

我认为您需要将编码设置为 UTF-8 才能看到所需的值。

  • 转到SOAPUI_HOME/bin
  • 备份 soapui.bat 个文件
  • 关闭 soapui 工具,如果是 运行
  • 在您选择的文本编辑器中打开 soapui.bat
  • 查找行set JAVA_OPTS=%JAVA_OPTS% -Dsoapui.ext.libraries="%SOAPUI_HOME%ext"
  • 在上面一行之后添加下面一行
    set JAVA_OPTS=%JAVA_OPTS% -Dfile.encoding=UTF-8
  • 保存文件
  • 重新启动 soapui,确保它反映在系统属性中

这应该可以帮助您看到所需的输出。

请注意,如果您使用 testrunner.bat 执行测试,请将上述建议的更改也合并到此文件中。