admin 管理员组文章数量: 1086019
虽然DWR是个很早就出现的Ajax框架,但一直都没去使用过,今天正好没事就看了一下并参照文档照做了个demo,
在其中碰到一个问题:
后台打印出错误信息:“严重: A request has been denied as a potential CSRF attack.” 在网上google一把
之后,出现此错误的原因大都是说“请求被拒绝,可能存在csrf(cross-site request forgeries,跨站请求伪造)攻击、
页面URL可能被跨站了的服务所调用之类的”,但是我这里只有一个简单的测试页面,是根本不存在什么所谓的跨站请求的,
但不知道为什么?希望有知道的朋友告诉一下我,万谢!
不过最后还是通过网上搜索给解决了,得到以下两种解决方案:
1、在web.xml配置文件中修改dwr的配置:
Xml代码
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
<!-- 新加corssDomainSessionSecurity参数 -->
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
</servlet>
2、将JSP文件中所引用的js文件engine.js的方式,
由<script type="text/javascript" src="js/engine.js"></script>
更改成:<script type="text/javascript" src="dwr/engine.js"></script>。
不知道为什么这样就可以啦,而引用js目录下就会报错。希望有知道朋友,不吝赐教,在下感激不尽!
本文标签: denied request DWR ATTACK CSRF
版权声明:本文标题:DWR A request has been denied as a potential CSRF attack 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1738258883a1952291.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论