0

SOAP Web サービスをモックしていますが、リクエストの本文に関係なく、デフォルトの最初のレスポンスしか返されません。

ドキュメントのMultiple Transaction Examplesに基づいて試みを行っていますが、何が間違っているのか混乱しています。

例として:

+ Request

      <?xml version="1.0" encoding="UTF-8"?>
      <SOAP-ENV:Envelope xmlns:SOAP-ENV="" xmlns:xsd="" xmlns:xsi="">
         <SOAP-ENV:Body>
            <m:transaction-identity-verification xmlns:m="">
            </m:transaction-identity-verification>
         </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>

+ Response

      <?xml version="1.0" encoding="UTF-8"?>
      <env:Envelope xmlns:env="">
         <env:Header />
         <env:Body>
            <java:transaction-response xmlns:java="j">
               <transaction-status>
                  <transaction-id>third_8020750179321</transaction-id>
                  <transaction-request-id>george_8020860578800</transaction-request-id>
                  <accounts-transaction-id>13</accounts-transaction-id>
                  <reference-id>13</reference-id>
                  <transaction-result>questions</transaction-result>
               </transaction-status>
            </java:transaction-response>
         </env:Body>
      </env:Envelope>

+ Request

      <?xml version="1.0" encoding="UTF-8"?>
      <SOAP-ENV:Envelope xmlns:SOAP-ENV="" xmlns:xsd="" xmlns:xsi="">
         <SOAP-ENV:Body>
            <m:transaction-continue xmlns:m="">
            </m:transaction-continue>
         </SOAP-ENV:Body>
      </SOAP-ENV:Envelope>

+ Response

      <?xml version="1.0" encoding="UTF-8"?>
      <env:Envelope xmlns:env="">
         <env:Header/>
         <env:Body>
            <java:transaction-response xmlns:java="">
               <transaction-status>
                  <transaction-id>cont_1_11020785803682</transaction-id>
                  <transaction-request-id>11020943348626</transaction-request-id>
                  <accounts-transaction-id>0</accounts-transaction-id>
                  <transaction-result>passed</transaction-result>
               </transaction-status>
            </java:transaction-response>
         </env:Body>
      </env:Envelope>

上記の例では、2 つの異なる要求を投稿しても、最初の応答しか受信しません。リンクされたドキュメントに基づいて、これは可能になるはずです。

4

1 に答える 1

0

Apiary モッ​​クサーバーには、リクエストの本文に基づいて、複数のトランザクションの例からどのレスポンスを返すかを決定する機能がありません。

API ブループリントでは、複数の応答を提供できます。Apiary モッ​​ク サーバーは、これらの例を区別するために応答コード、ヘッダー、またはコンテンツ タイプのみを使用します。

たとえば、コンテンツ タイプが異なる 2 つの応答があるとします。

+ Response 200 (plain/text)

    Text Response

+ Response 200 (application/json)

    { "text": "JSON Response" }

ここで、上記の応答を求めてモック サーバーにリクエストを送信します。AcceptJSON 応答を取得するためのヘッダーを指定できます。

$ curl -H 'Accept: application/json' URL
{ "text": "JSON Response" }

または、テキスト応答を求めます。

$ curl -H 'Accept: plain/text' URL
Text Response

これに関する詳細については、http://support.apiary.io/knowledgebase/articles/117119-handling-multiple-actions-on-a-single-resourceを参照してください。

于 2015-03-19T13:37:02.923 に答える