session - 在coldfusion中,什么范围内的变量可以传递到iframe页面?

标签 session iframe variables coldfusion scope

我写了2页来测试这个问题,但是服务器提示错误。我不知道为什么,有人能解释一下吗?非常感谢。

这是1.cfm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
        <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
        <title>Page Title</title>
    </head>
    <body>
        <cfscript>
            a="aaaaaaaaaaa";
            b="bbbbbbbbbbb";

            request.r1="rrrrrrr111111111";
            request.r2="rrrrrrrr222222222";

            session.s1="sssssssssss11111111111";
            session.s2="sssssssssss2222222222";
        </cfscript>
        <iframe src="2.cfm" width="600" height="400" name="myframe" scrolling="yes">
        </iframe><br />
        variables
        <cfdump var="#variables#">
        request
        <cfdump var="#request#">
        session
        <cfdump var="#session#">
    </body>
</html>

这是2.cfm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
    <head>
        <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
        <title>2.cfm</title>
    </head>
    <body>
        variables
        <cfdump var="#variables#">
        request
        <cfdump var="#request#">
        session
        <cfdump var="#session#">
    </body>
</html>

最佳答案

您似乎误解了网页请求的基本概念。

iframe 虽然显示为渲染页面的一部分,但实际上是它自己的请求,完全独立于原始页面请求。

session 变量将在它们两个之间共享(假设您在 Application.cfm/Application.cfc 中启用了 session ),尽管您不太可能通过从父页面设置变量来进入竞争状态( 1.cfm)并从 iframe 中的子页面(2.cfm)读取它们,这不是一个好主意(最佳实践)。

父页面 (1.​​cfm) 中设置的请求变量将无法用于 iframe (2.cfm) 中的页面,因为它是单独的请求。

就像请求范围是每个请求私有(private)的(但共享到所有模板和对象)一样,“变量”范围也是每个模板私有(private)的(但在使用 cfinclude 时在它们之间共享)。

虽然您的 iframe 可以访问自己的请求变量范围,但它们与原始页面的范围不同( 1.cfm)。

这是一般编程以及 ColdFusion 的一个相当基本的概念。如果您发现很难掌握,您可以考虑购买一份 ColdFusion Web 应用程序构建工具包,它可以让您相当快地从完全新手提升到初级到中级水平。

关于session - 在coldfusion中,什么范围内的变量可以传递到iframe页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1141301/

相关文章:

javascript - 如何处理动态设置动态 iframe 内容

html - iOS:带有 iframe 的页面不会在 WKWebView 中滚动

node.js - 前端客户端的用户对象

php - 使用 PHP/Apache 服务器从 Chrome 中消失的 session cookie

java - 使用 Java 客户端实现 Spring Security

java - 获取变量其他类java Android

Javascript/jQuery 变量,使用 var 的正确方法是什么?

c++ - CoRegisterClassObject 返回错误( session 0?)

c# - 在 iframe 中打开 pdf

php - 有没有办法以字节为单位获取 PHP 变量的大小?