由CFLOGIN吹走的网址参数?

时间:2016-01-24 22:17:12

标签: coldfusion cflogin

我尝试使用CFLOGIN代码,只是稍微修改了Adobe CFLOGIN documentation page中描述的代码来演示应用程序。

应用程序向用户发送包含以下链接的电子邮件: [theURL] /loggedin/addplayertomatch.cfm?match_ID= [theID]

如果用户已登录,请单击此链接。如果他们没有登录,application.cfc会相应地包含loginform.cfm,登录表单操作指向:

ViewResolver

(此时查询字符串仍包含我的match_ID参数)。但是,当我提交登录表单时,页面URL最终看起来像:

<form action="#CGI.script_name#?#CGI.query_string#" method="Post"> 

match_ID参数现已丢失,由CFID&amp; CFTOKEN。出于演示目的,我并不介意CFID&amp; CFTOKEN加入了乐趣,但我的match_ID网址参数在哪里?我怎么能回来?

注意:我的application.cfc或loginform.cfm中没有任何CFLOCATION。

谢谢!

1 个答案:

答案 0 :(得分:0)

您的应用程序似乎启用了clientManagement。如果不需要,您可以尝试将其关闭,看看CFID等是否会覆盖您自己的查询字符串。

或者,您可以尝试使用以下内容在OnRequestStart的开头抓取查询字符串:

<cfset request.qString = listLast(request,"?")> 

然后使用类似的内容将其附加到表单操作:

<form action="#CGI.script_name#?#CGI.query_string#&request.qString" method="Post">

有关clientManagment的更多信息: