通过Google Chrome传递带有javascript的参数

Passing parameter with javascript through Google Chrome

本文关键字:javascript 参数 Google Chrome 通过      更新时间:2024-03-14

所以我一直在基于这里列出的小部件进行工作:http://php-drops.blogspot.com/2011/04/creating-widget-with-javascript-and-php.html

用户我正在尝试创建小部件的预览功能,以便用户可以检查它的外观。我这样做的方式是将"复制并粘贴"代码部分传递到一个参数中,"预览"页面可以获取并回显该参数。这在firefox和ie中运行得很好,但在Chrome中显示一个空白页面。

当我在Chrome中的空白页面上进行查看源代码时,源代码与firefox和ie中的相同。当我将"查看页源代码"中的代码复制并粘贴到新页面上时,它在Chrome中显示得很好。

有人能为我指明正确的方向吗?我应该寻找什么?我在参数中传递javascript是否违反了某种规则——firefox和ie不关心这个规则,但Chrome关心这个规则?

以下是我尝试做的事情的简化版本:

http://imaginarydomain.com/widget/example.php?widget_script=%3Cscript+键入%3D%22text%2Fjavascript%22%3Edocument.write('hello%20world')%3C%2Fscript%3E

在chrome上查看页面源将显示:

         <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
         <html><head></head><body><script type="text/javascript">document.write('hello world')</script>
        </body></html>

但这一页将是空白的。

非常感谢!

这可能是由于Chrome的XSS攻击过滤器阻止javascript被传递。

当我在chrome上检查javascript控制台时,我得到了

"拒绝执行JavaScript脚本。在请求中找到脚本的源代码。"

在快速浏览了一下该怎么办之后,我发现没有一个选项很有吸引力。