Big*_*ear 2 ajax coldfusion session struct cfml
我从这个发现开始;
<cfscript>
app = application.getApplicationSettings().name;
sessionCollection = application.sessionTracker.getSessionCollection(app);
</cfscript>
Run Code Online (Sandbox Code Playgroud)
然后尝试遍历集合;
<cfloop collection="#sessionCollection#" item="i">
#StructFind(i, 'CurrentAction')#
</cfloop>
Run Code Online (Sandbox Code Playgroud)
失败了; 您试图将 java.lang.String 类型的标量变量解引用为具有成员的结构。
我试过了
#CurrentAction[i]#
Run Code Online (Sandbox Code Playgroud)
失败了; 变量 CURRENTACTION 未定义。
当我知道它存在的事实时(https://ibb.co/ZJwsKFS)
我也试过点表示法。
目的是为一个用户识别 ajax 侦听器活动,并影响另一个特定用户的操作作为响应。我的印象是我可以通过 sessionID 最终用户发送操作。如果这是不可能的,请随时告诉我。
所以这段代码:
<cfset x = {
a = 1
, b = 2
, c = 3
}>
<cfoutput>
<cfloop collection="#x#" item="i">
<li>#i#</li>
</cfloop>
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
输出以下内容:
这意味着这i是collection属性中定义的结构的键。您的代码试图在集合 (struct) 中找到一个键,但您引用了错误的变量。
要找到 的值B,您会这样做StructFind(x, "b")。你也不需要cfloop,你只需要检查键是否存在,然后获取值。
<cfset someVariable = "">
<cfif structKeyExists(x, "b")>
<cfset someVariable = structFind(x, "b")>
</cfif>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
65 次 |
| 最近记录: |