使用失眠来打电话

efu*_*ltz 6 soap insomnia

我正在尝试使用 Insomnia 进行肥皂呼叫 - 特别是试图获得成功。我将 URL 定义为端点,并将正文类型作为带有 SOAP 内容(信封、标题、正文)的 XML。我在标题中定义了用户 ID 和密码。当我运行时,我得到 415 Unsupported Media Type。由于信封中的所有 URL 地址,我无法真正粘贴肥皂内容。我正在使用 Insomnia 成功执行 REST 调用以获取我的信息(出于某种疯狂的原因,获取是 REST,但帖子是 SOAP),但无法使插入工作。我需要什么特别的东西,还是 Insomnia 不支持 SOAP 后事务?我用谷歌搜索,它出现在 2018 年,这是添加的。我没有可用的 WSDL。

我很欣赏这并没有提供很多信息,因此有关我可以提供更多帮助以获得帮助的指导也将有所帮助。有没有人成功地使用 Insomnia 进行 SOAP 调用?

小智 13

我只需要:

  • 请求方法:POST
  • Content-Type标头设置为text/xml; charset=utf-8(application/xml给了我 415 响应)。
  • 将请求正文包装在适当的 SOAP 信封中。

您应该能够调用 GETYourHandler.asmx来查找要使用的请求的信封。信封应该看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <soap:Body>
    <HelloWorld xmlns="http://tempuri.org/">
      <foo>
        <Id>1</Id>
        <Name>Bar</Name>
      </foo>
    </HelloWorld>
  </soap:Body>
</soap:Envelope>
Run Code Online (Sandbox Code Playgroud)

指南和信封样本的学分归于这个答案


sai*_*tam 5

您可以导入WSDL文件,以便自动创建所有方法、标题等。点击:

  1. 您的工作区名称(在我的示例中Insomnia
  2. 进出口
  3. 选择From URL而不是导入数据
  4. 粘贴 WSDL URL 并单击 Fetch and Import

例如,您可以使用以下 URL:http : //www.dneonline.com/calculator.asmx?wsdl

你会得到这个: 在此处输入图片说明


撰写此答案时的问题是,有两个错误:

  1. 并非所有 WSDL URL 都被正确导入(例如,这个 URL 在 SOAP UI 中有效,但在 Insomnia http://webservices.oorsprong.org/websamples.countryinfo/CountryInfoService.wso?WSDL 中无效)
  2. 这些方法正在导入,但它们不起作用

您可以在 Github 上提交和发布,以便解决此问题:https : //github.com/Kong/insomnia