尝试使用ColdFusion传递表单数据以进行post / redirect / get

时间:2009-08-18 14:52:01

标签: coldfusion

我必须在包含FORM的ColdFusion页面上修复安全漏洞,我们不希望用户能够在浏览器上按回+重新加载,并在提交之前查看填写了他们输入内容的字段形式。

该网站有一个.cfm页面,可以为另一个.cfm页面加载模板。第二个.cfm页面有FORM对象,它的ACTION是第一个.cfm页面。这是一个基本上会返回结果的搜索条件页面。

我尝试在第二个.cfm页面上更改FORM的ACTION指向一个temp.cfm页面,其中包含以下代码

<cfheader statuscode="302" statustext="Moved Temporarily">
<cfheader name="Location" value="firstpage.cfm">
<cfabort>

这样浏览器就无法使用“返回”返回原来的.cfm页面,其中填入的值...但是这并没有将我的FORM数据传递过这个temp.cfm页面而我的搜索是总是带来零结果。

3 个答案:

答案 0 :(得分:1)

在您的操作页面处理表单后,使用CFLOCATION将浏览器重定向到另一个页面。这使用302重定向。

答案 1 :(得分:0)

您使用的是cfform吗?如果是这样,请删除表单上的PreserveData =“true”属性。或者您可以选择从表单输入中删除您的value =“#form.formfield#”。如果您可以发布几行表格,我们可能会提供更好的帮助。

您是否检查过表单页面是否正在缓存?

答案 2 :(得分:0)

禁用HTML的元标记中的缓存可行。根本不需要使用重定向。

E.g。用户点击退出链接,当用户点击返回时,它将是一个新请求,到那时,您可以检查SESSION是否已登录,如果没有,则重定向到登录页面。