通过url / post参数请求执行脚本的常用方法?

时间:2011-08-03 15:03:29

标签: javascript http protocols

我们正在实施一个飞出消息系统,该系统通常在用户与页面交互时飞出,但有时需要在页面加载后飞出。

例如,在通过AJAX设置密码后,我们希望返回主页,并在加载该页面后显示“您的密码已更改”消息。

我们将使用Coldfusion创建实际的JavaScript调用并将其写入HTML。

我的问题是,是否有通过url / form参数请求执行脚本的标准方法?

我倾向于使用一个表单参数,即包含正确函数调用字符串和参数的JSON字符串。

1 个答案:

答案 0 :(得分:1)

执行您所说的内容的一种好方法是在<body>标记上使用“数据 - 参数”惯例或类似内容。

<body data-startmsg='Password successfully changed'>
  <!-- whole page of whatever -->
</body>

现在你的JavaScript - 不必是页面上的内联脚本 - 只需要一个“就绪”或“加载”处理程序,它可以检查<body>上的“data-startmsg”属性,显示它的弹出窗口。

根据邮件系统的复杂程度,有很多变化。例如,如果弹出窗口可能需要更精细的布局或表单输入或类似的东西,您可以将其转储到页面上<div>(或<aside>我猜)元素与一个隐藏它的类直到弹出代码可以找到它们。

编辑 - 进一步详细说明,我认为让你的客户端代码按照你在URL组件的基础上描述的工作可能是一个相当的想法,因为它使您的页面可能更容易受到更多种类的XSS攻击媒介的攻击。通过让JavaScript代码仅从页面中完全由服务器上的安全代码设置的部分获取其提示,您使攻击更难以利用参数清理中的一些弱点,因为在该设置中客户端代码将愉快地遵守您可能没有预期的URL中的参数。