Playframework 在Play模板中获取url查询参数

Playframework 在Play模板中获取url查询参数,playframework,playframework-2.0,Playframework,Playframework 2.0,我想从我的播放模板中访问url查询字符串参数 因此,我有以下url: myexample.com/product?q=mytermhere 我想在我的模板代码中访问这个“q”参数,以便在javascript中使用。这是否可能不通过整个控制器路线。谢谢 用于javascript 永远不要将用户输入(如查询参数)放入脚本标记中。曾经不管你做什么,如果你这么做,你的代码中就会有一个XSS漏洞。放心。没有办法安全地做这件事 如果您想从JavaScript访问用户输入,请将其放在HTML中的某个位置—例

我想从我的播放模板中访问url查询字符串参数

因此,我有以下url:

myexample.com/product?q=mytermhere
我想在我的模板代码中访问这个“q”参数,以便在javascript中使用。这是否可能不通过整个控制器路线。谢谢

用于javascript

永远不要将用户输入(如查询参数)放入脚本标记中。曾经不管你做什么,如果你这么做,你的代码中就会有一个XSS漏洞。放心。没有办法安全地做这件事

如果您想从JavaScript访问用户输入,请将其放在HTML中的某个位置—例如,放在元标记中,或者放在常规标记的数据属性中


要做到这一点很简单,请求时有一个名为
queryString
的属性,它是一个包含查询字符串参数的映射。

将此queryString作为参数传递给模板文件谢谢您的建议,但在这种情况下,我所做的只是在一个简单的函数中使用它来突出显示页面文本中的搜索项。xss不可能造成任何破坏。它不会靠近数据库,也不会持久化。q=“searchterm”只是传递到客户机上的一个函数中以突出显示文本。仅此而已。这正是我所担心的,您所描述的是一个典型的反射XSS漏洞-数据不需要持久化就可以受到XSS的攻击,反射XSS漏洞可以通过简单地将用户重定向到一个响应(或传递到函数,如您所说)的页面来利用在不安全的上下文(即在脚本标记内)中出现在查询字符串中的数据。那么危害在哪里呢?他们到底能做什么?他们不能破坏数据库,他们不能进入应用程序代码,他们不能做任何事情来改变系统的状态。他们可以通过重定向到另一个页面来娱乐自己,但是新用户仍然可以获得正确的页面