使用Coldfusion将图像从CFHTTP filecontent转换为二进制数据

时间:2009-10-08 10:05:00

标签: image coldfusion binary cfhttp

我正在尝试将通过cfhttp加载的图片(jpg)转换为二进制数据。我不能使用cffile action="readBinary",因为它不是本地文件。

2 个答案:

答案 0 :(得分:13)

以下是我处理此问题的方法,并使用它来使用ColdFusion 8每天抓取并处理数百张图像。

<cfhttp
    timeout="45"
    throwonerror="false"
    url="http://domain/image.jpg"
    method="get"
    useragent="Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12"
    getasbinary="yes"
    result="local.objGet"
>

<cfset local.objImage = ImageNew(local.objGet.FileContent)>

拥有图像对象后,您可以随心所欲地执行任何操作。将其保存到磁盘,调整大小,你的名字:)。我显然遗漏了我的所有错误检查(200个状态代码,是图像等),但这应该让你开始。

答案 1 :(得分:5)

我做了以下似乎有效:

<cfhttp url="http://foo.com/someImage.jpg" method="get" timeout="3" result="resp">
</cfhttp>

<cfreturn resp.fileContent.toByteArray() />