我正在使用ColdFusion调用ReportCloud API,它根据我通过cfhttp发送的参数即时进行邮件合并。
文档中的回复为:
成功后,响应头中的HTTP状态代码为200(确定)。响应正文包含一个以Base64编码的字符串编码的创建文档的数组。
有人可以帮助我如何将响应转换为可下载文件(链接还是直接下载)?我可能应该知道这一点,但不幸的是我不会。
添加了评论:
感谢您对这个问题的帮助和指导。我第一次使用StackOverflow作为海报,如果问题不清楚,我深表歉意。
我也整理了一个代码示例来查看cffiddle
<!--- Must replace "Authorization" header below with a real key --->
<cfset variables.jsonReq = '{
"mergeData": [
{
"Given_Name": "Mike",
"Surname": "Smith",
"Year_Group": "11"
},
{
"Given_Name": "Sally",
"Surname": "Smith",
"Year_Group": "12"
}
],
"template": null,
"mergeSettings": null
}'>
<cfhttp url="https://api.reporting.cloud/v1/document/merge?returnFormat=DOC&templateName=parentletter.docx" method="post" timeout="20" result="response" file="/www/something.docx">
<cfhttpparam type="header" name="Content-Type" value="application/json">
<cfhttpparam type="header" name="Authorization" value="ReportingCloud-APIKey oMDM4MrAqL9QEOpyzupnQW5NjvCNtvE5cVDaaLqxI">
<cfhttpparam type="body" name="mergeData" value="#jsonReq#">
</cfhttp>
<cfdump var="#response#">
响应以我认为是JSON数组的形式返回。我不确定如何去读取JSON数组并将内容制作为可下载文件。