如何在ColdFusion中调用Java API?

时间:2017-07-26 10:54:08

标签: api coldfusion cfhttp

我正在使用CF10。我想知道如何调用其他应用程序的API。 我将从不同的Java应用程序接收名为“token”的Base64编码字符串。未编码的版本将是用户的CID,USERNAME和由逗号分隔的UUID,如下所示: 178,username,a5f5ff2f-8d87-4656-821d-99e62daf512b 。 Base64编码的字符串看起来像: MTc4LGFpbXN3ZWIsYTVmNWZmMmYtOGQ4Ny00NjU2LTgyMWQtOTllNjJkYWY1MTJi。

那么,我做了什么 - 我已经将编码的字符串转换为变量。我在FORM范围内捕获字符串。

    <cfif isDefined("Form.token") and len(trim(Form.token)) is not 0>
        <cfset variables.actualTokenString = ToString(ToBinary(Form.token))>

    <cfset Session.CustomerID = ListGetAt(variables.actualTokenString, 1, ",")>


    <cfset Session.UserName = ListGetAt(variables.actualTokenString, 2, ",")>


     <cfset Session.UUID = ListGetAt(variables.actualTokenString, 3, ",")>
</cfif>

现在,我想要做的是 - 收到唯一的登录令牌后,我需要调用'that'应用程序的API来验证令牌并将其作为JSON发布。 我用“cfhttp”来做到这一点。如下所示:

<cfhttp url="https://AW-tst-staging.pearsondev.com/api/awlegacy" method="POST" result="result">
    <cfhttpparam type="formField" name="CID" value="#Session.CustomerID#">
    <cfhttpparam type="formField" name="USERNAME" value="#Session.UserName#">
    <cfhttpparam type="formField" name="UUID" value="#Session.UUID#">
</cfhttp>

我做得对吗?有人可以帮忙吗?

0 个答案:

没有答案