Использование веб-сервисов, которые не создает ColdFusion

Я новичок в веб-сервисах. Я использую ColdFusion 2016 и хочу сделать вызов по URL-адресу этой службы: https://apitest.authorize.net/xml/v1/request.api. Этот сервис написан на C#. Как я могу вызвать службу из ColdFusion, которая написана на другом языке?

Еще одна вещь, я хочу передать приведенные ниже данные xml в качестве входных данных. Как я могу это сделать?

<createTransactionRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
  <merchantAuthentication>
    <name>API LOGIN ID</name>
    <transactionKey>TRANSACTION KEY</transactionKey>
  </merchantAuthentication>
  <transactionRequest>
    <transactionType>authCaptureTransaction</transactionType>
    <amount>139.94</amount>
    <payment>
      <creditCard>
        <cardNumber>5424000000000015</cardNumber>
        <expirationDate>1220</expirationDate>
        <cardCode>999</cardCode>
      </creditCard>
    </payment>
    <order>
      <invoiceNumber>INV-12345</invoiceNumber>
      <description>Golf Supplies</description>
    </order>
    <lineItems>
      <lineItem>
        <itemId>243</itemId>
        <name>Golf Bag</name>
        <description>Blue wheeled golf bag</description>
        <quantity>1</quantity>
        <unitPrice>129.99</unitPrice>
      </lineItem>
      <lineItem>
        <itemId>42</itemId>
        <name>Golf Ball</name>
        <description>Long Drive II Balls</description>
        <quantity>5</quantity>
        <unitPrice>1.99</unitPrice>
      </lineItem>
    </lineItems>
    <customer>
      <id>39432</id>
      <email>[email protected]</email>
    </customer>
    <billTo>
      <firstName>John</firstName>
      <lastName>Doe</lastName>
      <address>1234 Main St</address>
      <city>Pecan Springs</city>
      <state>TX</state>
      <zip>44628</zip>
      <country>USA</country>
    </billTo>
    <shipTo>
      <firstName>John</firstName>
      <lastName>Doe</lastName>
      <address>PO Box 3432</address>
      <city>Pecan Springs</city>
      <state>TX</state>
      <zip>44628</zip>
      <country>USA</country>
    </shipTo>
  </transactionRequest>
</createTransactionRequest>

person Abhilash Shajan    schedule 20.12.2017    source источник


Ответы (1)


Я нашел решение для этого.

  <cfsavecontent variable="strXML">

  <createTransactionRequest xmlns="AnetApi/xml/v1/schema/AnetApiSchema.xsd">
  <merchantAuthentication>
    <name>API LOGIN ID</name>
    <transactionKey>TRANSACTION KEY</transactionKey>
  </merchantAuthentication>
  <transactionRequest>
    <transactionType>authCaptureTransaction</transactionType>
    <amount>139.94</amount>
    <payment>
      <creditCard>
        <cardNumber>5424000000000015</cardNumber>
        <expirationDate>1220</expirationDate>
        <cardCode>999</cardCode>
      </creditCard>
    </payment>
    <order>
      <invoiceNumber>INV-12345</invoiceNumber>
      <description>Golf Supplies</description>
    </order>
    <lineItems>
      <lineItem>
        <itemId>243</itemId>
        <name>Golf Bag</name>
        <description>Blue wheeled golf bag</description>
        <quantity>1</quantity>
        <unitPrice>129.99</unitPrice>
      </lineItem>
      <lineItem>
        <itemId>42</itemId>
        <name>Golf Ball</name>
        <description>Long Drive II Balls</description>
        <quantity>5</quantity>
        <unitPrice>1.99</unitPrice>
      </lineItem>
    </lineItems>
    <customer>
      <id>39432</id>
      <email>[email protected]</email>
    </customer>
    <billTo>
      <firstName>John</firstName>
      <lastName>Doe</lastName>
      <address>1234 Main St</address>
      <city>Pecan Springs</city>
      <state>TX</state>
      <zip>44628</zip>
      <country>USA</country>
    </billTo>
    <shipTo>
      <firstName>John</firstName>
      <lastName>Doe</lastName>
      <address>PO Box 3432</address>
      <city>Pecan Springs</city>
      <state>TX</state>
      <zip>44628</zip>
      <country>USA</country>
    </shipTo>
  </transactionRequest>
</createTransactionRequest>

    </cfsavecontent>

    <cfhttp
        method="post"
        url=" https://apitest.authorize.net/xml/v1/request.api"
        result="objGet"
        >
        <cfhttpparam
            type="XML"
            value="#strXML.Trim()#"
            />

    </cfhttp>

    <cfdump var="#objGet#"/>
person Abhilash Shajan    schedule 20.12.2017