postman测试调用WebService时不会自动添加命名空间

这两天在学习调用webservice,发现Postman直接调用时,返回

no namesapce on "myservice" element. you must send a soap message

找了很久,才明白,Postman 不会自动为请求添加命名空间,得手动在请求的 XML 数据中添加。在Postman中调用成功后,想着用delphi10写个程序测试调用,delphi10导入了wsdl后,直接使用postman中测试成功的xml数据又会返回xml格式错误的问题。又困扰了一天。后来用wireshark抓包,发现delphi编写的程序所发送的数据比postman发送的数据多了一层

Delphi 中使用 Import WSDL 工具导入 WSDL 文件时,Delphi 会根据 WSDL 文件的定义生成相应的客户端代码。这些生成的代码会包含必要的命名空间信息,以确保发送的 SOAP 请求能够被 WebService 服务器正确识别。

 以上结论是问大模型得到的。

 

你可能感兴趣的:(Delphi编程,postman,测试工具)