0

CleverElements SOAP API を使用しようとしていますが、機能しません。正直なところ、私は SOAP を使ったことがなく (ただし、XML-RPCRESTなどを扱うことは多い)、それは簡単なはずだと思っていました。

私はsavongemでRubyを使用しています。パラメーターを必要としない SOAP 経由で任意の関数を呼び出すことができますが、パラメーターを持つ関数では、SOAP サービスはパラメーターを認識しません。

これは私の要求です:

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="Sendcockpit/API" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ins0="Sendcockpit/API">
  <env:Header>
    <validate>
      <userid>32027</userid>
      <apikey>**************</apikey>
      <version>1.0</version>
      <mode>live</mode>
    </validate>
  </env:Header>
  <env:Body>
    <apiGetListDetails>
      <listID>72472</listID>
    </apiGetListDetails>
  </env:Body>
</env:Envelope>

これは WSDL ファイルです: http://api.sendcockpit.com/server.php?wsdl

私は何か(おそらく非常に単純で、非常に明白で、基本的なSOAP)のものを見逃していますか?

4

1 に答える 1

0

どうでも。どうやらラッピング<ctListRequest>ノードが必要です。ファイルsavonで指定されたすべてのものを適用するという印象を受けました...wsdl

このリクエストは機能します:

<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:wsdl="Sendcockpit/API" xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ins0="Sendcockpit/API">
  <env:Header>
    <validate>
      <userid>32027</userid>
      <apikey>***********</apikey>
      <version>1.0</version>
      <mode>live</mode>
    </validate>
  </env:Header>
  <env:Body>
    <apiGetListDetails>
      <ctListRequest>
        <listID>72472</listID>
      </ctListRequest>
    </apiGetListDetails>
  </env:Body>
</env:Envelope>
于 2011-10-17T14:00:08.453 に答える