可不可以用ColdFusion写一个在服务器端访问其他网站的asp文件,返回asp执行后的结果

能否用ColdFusion写一个在服务器端访问其他网站的asp文件,返回asp执行后的结果?
很惭愧,我不懂CF。虚心向各位CF版的XDJM们请教。

我用ASP写了一个网页,返回结果只是字符串的“1”或者“0”,连HTML标签也没有。
如果用客户端的AJAX访问就简单了。可是我希望用CF写的网页在它的服务器端能够使用XMLHttpRequest或其他方式访问我的ASP网页,将ASP返回的字符串(1或0)保存在CF的Session里。

要求:
1、最好写1个函数,名称是CheckAJAX,参数是访问的ASP的URL。函数内部用XMLHttpRequest或其他方式访问URL,返回ASP网页的结果,不使用异步访问。
如果用XMLHttpRequest,open方法的三个参数是"GET"、URL、false。
2、这个CF文件也需要代入两个参数:MyID和MyCode。这两个参数是提交到这个CF文件的表单中文本框的名称。
用CF实现类似下面代码的功能(我的是ASP代码):

/****开始****/

/*表单中名称为MyCode的文本框中输入了文字,asp代码*/
<%
        If Request.Form("MyCode") <>"" Then

                /*执行CheckAJAX函数,代入URL参数,将返回内容存入Session变量"Result"中。
                /*需要加入时间戳,使不能使用缓存。ASP的Timer可以返回从半夜零点开始到现在的毫秒数
                Session("Result") = CheckAJAX("http://www.AAAAA.com/Check.asp" _
                                              "?TimeStamp=" & Timer & _
                                              "&ID=" & Request.Form("MyID") & _
                                              "&Code=" & Request.Form("MyCode"))
        End If
%>

<p>这是HTML代码。URL返回结果是:<%=Session("Result")%></p>


/*ASP代码*/
<%
        If Session("Result") = "1" Then
Response.Write("<p>是1</p>")
        Else
Response.Write("<p>不是1</p>")
        End If
%>

/****结束****/

3、请写出完整的包括HTML的代码。就是包括:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>


非常感激!
------解决方案--------------------
<cfhttp url="http://abc.com/abc.asp"  method="POST" resolveurl="YES"> 
    <cfhttpparam name = "form_test" type = "FormField" value = "This is a form variable">
 </cfhttp> 

CFHTTP标签是功能最强大的CFML标签之一,它可以用来:


· 从网络上获取网页和查询结果。


· 向远程服务器,CFML模板或CGI应用程序传送数据并处理返回数据。


超文本传输协议(HTTP)处理Web服务器之间的各种通信。执行一个事务处理所采取的方法决定了服务器处理什么以及什么内容被传送给浏览器。除了HTML文档之外,HTTP还支持二进制文件,图象、音频和视频等内容类型。HTTP协议标准规定,用户的请求信息和服务器的响应信息,以及事务处理的状态信息均以请求标题和响应标题的形式被传递。HTTP协议有几种通信方法,用于在客户和服务器之间交换信息。CFHTTP标签实现了最常用的HTTP通信方法:GET和POST. CFHTTP的语法非常简单,但它提供了许多选项,用于指定输出,处理链接以及建立查询等任务。

CFHTTP的语法


CFHTTP 标签的基本语法如下:


<CFHTTP URL=" hostname"



USERNAME=" username"



PASSWORD=" password"



NAME=" queryname"



COLUMNS=" query_columns"



PATH=" path"



FILE=" filename"



METHOD=" get_or_post"



DELIMITER=" character"



TEXTQUALIFIER=" character"



RESOLVEURL=" Yes/No"



PROXYSERVER=" hostname">


</CFHTTP>


处理所获网页中的链接



要保持通过CFHTTP从Web服务器获取的网页中的相对链接,应将RESOLVEURL属性设为“Yes”。当RESOLVEURL=YES时,下列可能包含链接的标签会被处理:


· IMG SRC


· A HREF


· RORM ACTION


· APPLET CODE


· SCRIPT SRC


· EMBED SRC


· EMBED PLUGINSPACE


· BODY BACKGROUND


· FRAME SRC


· BGSOUND SRC


· OBJECT DATA


· OBJECT CLASSID


· OBJECT C0DEBASE


· OBJECT USEMAP


注意:如果获取的网页中某个URL指向一个二进制文件,则该网页不被显示。你可以输入一个路径作为PATH属性的值,从而把该二进制文件保存到本地计算机中。

使用CFHTTP的Get方法


Get方法于从指定的服务器获取文本文件或二进制文件。下面的几个例子演示了几种常用的Get操作。Get方法是一种单向的事务处理方法,CFHTTP用这种方法获得一个对象,而Post方法是双向的处理方法,CFHTTP用Post方法向ColdFusion文件或CGI程序传递变量,并接收和处理返回的数据。



例子:获取到变量中



下面的例子用Get方法请求Yahoo站点的缺省主页,并将文件内容保存到一个变量中,然后用CFOUTPUT将该变量的内容显示在浏览器中。


<CFHTTP METHOD="Get"



URL="http://www.yahoo.com/index.shtml"



RESOLVEURL="Yes">


<CFOUTPUT>


#CFHTTP.FileContent# <BR>


</CFOUTPUT>