我正在尝试通过提琴手路由我的soapUI Web 服务请求,但它似乎不起作用。我试过网址之类的
http://localhost./myservice/myservice.asmx
http://localhost:8888/myservice/myservice.asmx
后者虽然通过提琴手,但它返回请求本身,而不是来自 web 服务的响应。有什么帮助吗?
要解密 SoapUI 生成的 HTTPS 流量,您可能需要将 Fiddler 证书导入 Java 信任库文件cacerts。对于 SoapUI,此文件通常位于“C:\Program Files (x86)\SmartBear\SoapUI-5.0.0\jre\lib\security\”(或您安装它的任何版本和路径)。
在 Fiddler 中,将根证书导出到桌面:Tools > Fiddler Options... > HTTPS > Export Root Certificate to Desktop。
cmd
以管理员身份运行。
cd
到 SoapUI 的 JRE 的安全文件夹,例如:
cd "C:\Program Files (x86)\SmartBear\SoapUI-5.0.0\jre\lib\security\"
备份cacerts文件:
xcopy cacerts cacerts.bak
导入 Fiddler 证书:
..\..\bin\keytool.exe -import -alias fiddler -file "C:\Users\<username>\Desktop\FiddlerRoot.cer" -keystore cacerts -storepass changeit
这里的“changeit”是cacerts存储的密码。
当提示信任证书时,输入yes
.
重新启动 SoapUI。
将 SoapUI 配置为使用 Fiddler 作为代理:转到File > Preferences > Proxy Settings并指定:
请记住在 Fiddler 未运行时恢复原始代理设置。
Fiddler 将自己作为代理自动注入,但仅注入 IE 堆栈。SoapUI 使用 java 堆栈,因此代理不是自动的。
你有没有尝试过:
http://localhost/myservice/myservice.asmx (without the dot)
更新
Fiddler 通过充当您机器上的代理来工作。启动时,它会在端口 8888 上自行设置。这就是为什么您在使用localhost:8888
. 如果你想使用,localhost
那么你需要告诉 fiddler 查看端口 80。
在 Internet Explorer 主菜单中,依次单击工具、Internet 选项、连接、局域网设置,最后单击高级。现在将端口更改为 80,看看是否可行。