我编写了一个 Bash SOAP 库,它使用 wget 作为 HTTP 服务器的接口。有意避免 curl,因为在使用此库的系统上默认情况下不可用或未安装 curl。
该库的基础是查询 WSDL,确定参数并允许从命令行调用函数/方法,通过一个简单的包装器来设置 SOAP url:
$ ./mysoap.sh MyMethod sKey=1234 bAnotherParameter=False sAnotherParam="Hello"
Run Code Online (Sandbox Code Playgroud)
但是,当 wget 收到 500 响应时,它不会将响应正文写入由-O. 响应包含服务器生成的 SOAP 错误,这对客户端很有用。有没有办法强制 wget 将响应写入输出文档,而不管状态如何?文档似乎不清楚-O发生错误时的功能,所以对我来说,它没有按预期工作。