我有一个成员区域,当登录到名为"userid"的会话变量时.它适用于所有页面.我有一个启用了sessionmanagement的application.cfm文件.
问题是我有一个闪存录像机出现在一个新窗口中,该窗口发布到名为save.cfm的文件.一旦我点击闪存记录器上的保存,它就会发布到save.cfm,我收到错误消息.它们都在同一个域中,所以我不明白为什么我会收到500 Element USERID is undefined in SESSION
错误.表单与该值无关,该值由会话获取.
我怀疑Flash播放器没有发送cfid/cftoken cookie,因此CF App服务器无法确定此流量属于哪个会话,因此无法加载会话变量.
要确认这一点,请在发布时在save.cfm页面上记录cookie结构的内容.或者,更好的是,使用数据包嗅探器/代理来监视流量.
您可能必须通过将session.urltoken添加到URL来明确地在您发布的URL中包含会话令牌.
因此,当您为录像机的帖子配置目的地(假设它由CF生成)时,而不是使用
save.cfm
Run Code Online (Sandbox Code Playgroud)
使用
save.cfm?#urlEncodedFormat(session.urltoken)#
Run Code Online (Sandbox Code Playgroud)