`

dwr的A request has been denied as a potential CSRF attack.错误

阅读更多

   虽然DWR是个很早就出现的Ajax框架,但一直都没去使用过,今天正好没事就看了一下并参照文档照做了个demo,

在其中碰到一个问题: 

   后台打印出错误信息:“严重: A request has been denied as a potential CSRF attack.” 在网上google一把

之后,出现此错误的原因大都是说“请求被拒绝,可能存在csrf(cross-site request forgeries,跨站请求伪造)攻击、

页面URL可能被跨站了的服务所调用之类的”,但是我这里只有一个简单的测试页面,是根本不存在什么所谓的跨站请求的,

但不知道为什么?希望有知道的朋友告诉一下我,万谢!

 

   不过最后还是通过网上搜索给解决了,得到以下两种解决方案:

   1、在web.xml配置文件中修改dwr的配置:

<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>

   据说参数corssDomainSessionSecurity是在dwr版本2.0才有的.默认值为true,也就是禁止其他域发送请求.若设置成false后,就能够从其他域进行请求但这样做会在安全性上有一些冒险.

 

   2、将JSP文件中所引用的js文件engine.js的方式,由<script type="text/javascript" src="js/engine.js"></script> 更改成:<script type="text/javascript" src="dwr/engine.js"></script>。不知道为什么这样就可以啦,而

引用js目录下就会报错。希望有知道朋友,不吝赐教,在下感激不尽!

 

 

分享到:
评论
5 楼 songbgi 2012-12-21  
  tomcat6没问题 7就出问题了
4 楼 jiangkan12 2011-12-30  
关于第2点,是因为engine.js已经封装在dwr的jar包里了,默认是可以引用到的
3 楼 yuanlei18 2011-04-10  
刚好遇到这个问题,不过学校里好像没出现这样的问题,不知道怎么回事??
2 楼 沈冠军 2011-04-05  
1 楼 bevis.cn 2010-01-08  
在我的一个网站中,平时都好好的,可是放到客户的server上的时候,就要在网页中弹出access is denied的错误,
后来我查看了日志,
日志里也有一条语句“ A request has been denied as a potential CSRF attack”

我也奇怪,我哪里有Cross domain都不知道,晕了

相关推荐

    dwr包.rar dwr.jar engine.js util.js dwr-noncla.jar readme.txt

    dwr包.rar dwr.jar engine.js util.js dwr-noncla.jar readme.txt JAR File: dwr.jar (1.08Mb) To DWR enable your web-app WAR File: dwr.war (4.62Mb) Demos/Examples of what DWR can do Sources: dwr-...

    DWR(包括engine.js+util.js).rar

    它使用了AJAX技术,但避免了跨站脚本攻击(Cross-Site Scripting, XSS)和跨站请求伪造(Cross-Site Request Forgery, CSRF)等问题,因为每个请求都包含了服务器生成的安全令牌,确保了请求的合法性。 为了使用DWR...

    dwr源码包,dwr.jar包下载

    1、 导入dwr.jar包 2、 在web.xml中配置dwr,如下: &lt;!-- 配置DWR --&gt; &lt;servlet-name&gt;dwr-invoker org.directwebremoting.servlet.DwrServlet &lt;init-param&gt; &lt;param-name&gt;debug&lt;/param-name&gt; ...

    dwr20.dtd

    dwr20.dtd

    dwr.jar engine.js util.js,Dwr相关

    标题中的"dwr.jar"是DWR的主要库文件,包含了所有必要的Java类和接口,用于在服务器端实现DWR的功能。这个JAR文件通常会被部署到应用服务器的类路径中,以便服务端代码可以访问和使用DWR的API。 "engine.js"是DWR的...

    dwr2.0.5.jar&dwr2.0.6.jar&dwr3.rc1.jar

    部署DWR JAR文件通常涉及到将它们添加到Web应用的类路径中,配置DWR的`dwr.xml`配置文件,以及在客户端HTML页面中引入相应的JavaScript库。对于Spring框架的集成,还需要配置Spring的bean定义。 总的来说,DWR的...

    DWR,web.xml,dwr.xml,converted,created

    取得dwr的dwr.jar包和其他dwr所需的其他jar包 web.xml dwr.xml 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,。。 有几个术语有必要理解,参数叫做converted,远程Bean叫做created.如果远程Bean A有个方法A....

    DWR3.0.jar、DWR.war和DWR2.0中文说明文档

    通过分析这个war文件,开发者可以学习如何配置DWR的XML配置文件(dwr.xml),以及如何创建可从JavaScript调用的Java方法。 3. **DWR2.0中文说明文档**: 这份文档对于理解DWR的工作原理和使用方法至关重要,特别是...

    DWR2.jar + DWR.xml + DWR2.0.dtd + Web.xml

    当编辑DWR.xml时,DTD可以帮助开发者遵循正确的格式和属性,避免配置错误。 **Web.xml** 是Web应用程序的部署描述符,它是每个Java EE Web应用程序的标准配置文件。在这个文件中,你需要注册DWRServlet,以便服务器...

    dwr.jar/dwr-2.0.5-src.zip/dwr.zip

    1. **DWR.jar**: 这是DWR的核心库文件,包含了运行DWR所需的所有类和资源。当你在项目中引入dwr.jar,你可以使用DWR提供的API来实现Ajax功能。这个jar文件包括了各种Servlet、Filter、JavaScript接口和辅助类,...

    DWR中文文档......

    - **dwr.xml**:这个文件用于描述DWR服务的配置,包括哪些类和方法可以被远程调用,以及如何处理这些调用的细节。例如,通过`&lt;allow&gt;`标签指定允许远程访问的类和方法,通过`&lt;converters&gt;`和`&lt;creators&gt;`标签指定...

    dwr js包 DwrEngine.js+DwrUtil.js

    3. 安全性加强:DWR 2.0可能增加了对安全性的考虑,如更好的防止跨站脚本攻击(XSS)和跨站请求伪造(CSRF)。 4. 错误处理:新版本可能改进了错误处理机制,提供更清晰的错误信息和更好的异常恢复策略。 5. 兼容性...

    dwr.xml文件

    ### dwr.xml 文件知识点解析 #### 一、DWR(Direct Web Remoting)简介 DWR(Direct Web Remoting)是一种简化Ajax应用开发的技术。它允许JavaScript直接调用服务器端的Java方法,使得开发者能够更加方便地进行...

    dwr教程+dwr.jar+util.js+engine.js

    `dwr.xml` 文件是DWR的配置文件,用于设置DWR的行为,如允许访问的Java类和方法、安全性设置、错误处理等。通过编辑这个文件,开发者可以控制哪些服务器端的对象和方法可以被AJAX调用,以及如何处理这些调用。此外,...

    dwr.jar dwr.jar

    DWR(Direct Web Remoting)是一个用于改善web页面与Java类交互的远程服务器端Ajax开源框架,可以帮助开发人员开发包含AJAX技术的网站。它可以允许在浏览器里的代码使用运行在WEB服务器上的JAVA函数,就像它就在...

    dwr-3.0.jar

    这表明DWR团队在错误修复和优化方面付出了大量努力,确保了该框架的可靠性和兼容性。 DWR的核心特性包括: 1. **反向Ajax**:DWR允许服务器主动推送数据到客户端,而不仅仅是响应客户端的请求。这种功能在实时更新...

    dwr dwr包 dwr3.0文档 dwr3.0.jar

    6. **错误处理**: DWR提供了一套完整的错误处理机制,包括服务器端和客户端的错误报告,帮助开发者快速定位和修复问题。 7. **Caching**: 为了提高性能,DWR支持缓存服务器端的Java对象实例,这样后续的调用就无需...

    DWR.xml配置文件说明书(含源码)

    DWR.xml配置文件说明书 1、 建立dwr.xml 配置文件 任何一个dwr.xml的文件都需要包含DWR DOCTYPE的声明行,格式如下: &lt;!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" ...

    DWR 教程 中文API DWR.xml配置文件说明 DWR学习笔记

    DWR.xml文件是DWR框架的核心配置,它定义了哪些服务器端的Java对象可以被JavaScript访问,以及这些对象的映射、安全设置和其他配置选项。通过配置这个文件,开发者可以精细控制DWR的行为,比如设置安全策略、URL映射...

Global site tag (gtag.js) - Google Analytics