Как вернуть файл cfdocument pdf и сервер пользователю в браузере?
У меня есть функция, которая будет генерировать PDF-файл cfdocument. Затем я хотел бы вернуть документ и сервер в браузер. Вот пример функции, которая генерирует файл PDF.
<cftry>
<cfdocument format="PDF" filename="file.pdf" overwrite="Yes">
<table>
<tr>
<td>Test</td>
</tr>
</table>
</cfdocument>
<cfset local.fnResults = {file: //Here I'm not sure what I should return}>
<cfcatch type="any">
<cfset local.fnResults = {status : 400, message : "Error! Something went wrong."}>
</cfcatch>
</cftry>
<cfreturn fnResults>
Функция выше должна генерировать файл и возвращать PDF в fnResults
состав. Затем на serve.cfm
У меня есть эта логика:
<cfset local.Results = genertePDF()>
<cfif structKeyExists(local.Results, "FILEPATH")>
<cfheader name="content-disposition" value="attachment;filename=#local.Results["FILENAME"]#"/>
<!---Add the file content to the output stream:--->
<cfcontent file="#local.Results["FILEPATH"]#" type="application/octet-stream" reset="true"/>
<!---Exit immediately after adding the file content to avoid corrupting it:--->
<cfabort/>
<cfif>
Вы можете игнорировать структуру РЕЗУЛЬТАТОВ, так как я не все изменил. Моя единственная проблема здесь состоит в том, чтобы выяснить, как вернуть cfdocument
содержание? Если кто-нибудь знает, как заставить это работать, пожалуйста, дайте мне знать. Спасибо.
1 ответ
Изменить:
<cfheader name="content-disposition" value="attachment;filename=#local.Results["FILENAME"]#"/>
Для того, чтобы:
<cfheader name="content-disposition" value="inline;filename=#local.Results["FILENAME"]#"/>