我可以使用get请求返回文件吗?我想通过REST GET方法返回一个word文档来调用angularJS服务。不确定它是否可能。
答案 0 :(得分:2)
你对细节有点了解,所以我的答案会有点轻松。
REST请求只是一个请求。事情的REST方面更像是定义URL的方式,它实际上发生在请求进程本身,这仍然是vanilla HTTP。
因此,与任何GET请求相同,如果要返回二进制数据,请相应地设置标题(<cfheader>
),然后返回文件(<cfcontent>
)。
答案 1 :(得分:1)
所以我就是这样做的,幸运的是我得到了这个: http://smithcustomdev.com/2010/10/20/download-file-to-browser-using-cfscript/ 我所要做的就是使方法远程并听取REST服务
<cfscript>
private void function serveFile(string filePath){
var fileContent = fileRead(expandPath(filePath));
var context = getPageContext();
context.setFlushOutput(false);
var response = context.getResponse().getResponse();
response.reset();
response.setContentType("text/csv");
response.setContentLength(len(fileContent));
response.setHeader("Content-Disposition","attachment; filename=#listLast(filePath,'\')#");
var out = response.getOutputStream();
out.write(ToBinary(ToBase64(fileContent)));
out.flush();
out.close();
}
</cfscript>