`
hqman
  • 浏览: 360829 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

解决dwr跨域问题

    博客分类:
  • ajax
阅读更多

有这样的需求 a.com 要通过 ajax 访问 b.com的数据

dwr 2.0提供了 跨域访问的功能

 

 
dwr写道
Cross Domain Ajax: <script> tag manipulation

Should you need to access servers in a different domain we've enabled a new remoting scheme. From DWR 2.0 you can use manipulation of <script> tags in addition to XMLHttpRequest or iframes. To use is you just need to do the following:
DWREngine.setMethod(DWREngine.ScriptTag);

 

 

dwr 写道
To allow cross-domain script tag requests you need to add the following incantation to web.xml:

<init-param>
<param-name>allowGetForSafariButMakeForgeryEasier</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>crossDomainSessionSecurity</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>allowScriptTagRemoting</param-name>
<param-value>true</param-value>
</init-param>

To configure the client where to send cross-domain requests, set the ._path variable for the remote interface in question:

Remote._path = 'http://otherdomain.com/webapp/dwr';
Remote.someFunction();

Cross-domain remoting may not work properly with reverse ajax.
 

实际开发

 

js 写道
<script type='text/javascript' src='http://a.com/dwr/interface/regutil.js'></script>
<script type='text/javascript' src='http://a.com/dwr/engine.js'></script>

<script type='text/javascript' src='http://a.com/dwr/util.js'></script>

 

  

js 写道
DWREngine.setMethod(DWREngine.ScriptTag);
regutil._path = 'http://sso.dxy.cn/dwr/';
 

 

   

调用方法 出现  XMLHttpRequest.open 时权限不足

 

网上搜索了下 很多人说是 firefox的bug

 

再次搜索  看到scripttag 能搞定此问题

 

把js  的引入 改成 动态 加载 果然可以了 哈哈 biggrin

 

注意点:dwr jar需要是2.0.2

 

 

 

分享到:
评论
3 楼 fzfx88 2011-05-27  
貌似Apache + tomcate 可以解决
2 楼 rootzwy 2008-09-16  
请问一下,你跨域同步问题是怎么解决的?我用dwr.engine.setAsync(false);怎么没有起作用?
1 楼 oohehe1029 2008-08-21  
    我也在为dwr跨域问题郁闷呢。想请教一下,你的js动态加载是用哪种方法实现的。能加个QQ让我详细请教一下吗?谢了大侠!Q:37422667

相关推荐

    dwr跨域访问以及dwr的使用+dwr.jar

    **一、DWR跨域访问** 1. **什么是跨域访问**:跨域是指浏览器出于安全原因,不允许不同源的页面之间进行交互。源由协议、主机名和端口号组成。DWR通过设置CORS(Cross-Origin Resource Sharing)策略,允许不同源的...

    DWR框架实例及常见问题解决办法,免费放送

    1. **跨域问题**:DWR默认支持跨域,但如果遇到问题,可以检查配置文件`dwr.xml`中的跨域设置,或者使用CORS策略。 2. **缓存问题**:如果页面上的数据没有实时更新,可能是由于浏览器缓存了DWR的响应。可以通过...

    dwr实现ajax功能ajax+dwr

    `ajaxReg(解决中文问题)`可能解决了在使用Ajax注册功能时遇到的中文字符编码问题。 通过学习和实践这些资源,开发者可以深入理解DWR如何与Ajax结合,实现高效的Web应用交互。同时,掌握DWR可以帮助开发者避免编写...

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

    DWR简化了跨域问题,让开发者可以像调用本地函数一样调用远程服务。 6. **学习和开发**: 对于初学者,可以通过阅读官方文档和示例代码了解如何配置DWR,以及如何在项目中使用它。熟练掌握DWR后,可以尝试自定义...

    dwr实例,从后台取数据显示

    它处理了跨域问题,自动序列化和反序列化数据,并且支持异步调用,减少了页面刷新的需求。 2. **DWR的核心组件**: - **Engine**:引擎是DWR的核心,负责处理所有与远程调用相关的任务,包括安全、缓存、转换等。 ...

    DWR中文文档 (DWR 2.0)

    **10.1 常见问题**:列举在使用DWR过程中可能会遇到的一些常见问题及其解决方案。 1. **TransformerFactoryConfigurationError**:解决方法可能是检查TransformerFactory的配置是否正确。 2. **XML解析错误**:通常...

    DWR中文文档

    Remoting允许你在浏览器中直接调用服务器端的方法,Reverse Ajax则是指服务器可以主动向客户端推送数据,而CORS则解决了跨域访问的问题。 2. **DWR架构**:DWR由三个主要部分组成:`Engine`、`Servlet`和`...

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

    DWR 3.0引入了重大的改进和新特性,如增强的安全性、支持JSONP(JSON with Padding)以跨域通信、增加了对Spring框架的更深入集成、支持更多类型的Java对象转换为JavaScript以及改进的调试工具。这个版本的目标是...

    DWR 视频教程 使用DWR开发AJAX For JavaEE

    8. **集成与调试**:理解如何将DWR与其他前端框架(如jQuery或AngularJS)集成,并使用DWR的内置调试工具进行问题排查。 9. **实战项目**:“[浪曦原创]零散视频三 使用DWR开发AJAX For J2EE(JustCode).wrf”可能是...

    Dwr3 实现消息推送步骤详解

    5. **解决跨域问题**: - DWR3支持跨域通信,但默认可能有限制。在`dwr.xml`配置文件中,你可以通过`crossDomain`元素开启跨域支持,或者在服务器端代码中设置相应的HTTP响应头,如`Access-Control-Allow-Origin`。...

    DWR电子表单

    2. **安全机制**:DWR提供了一套安全机制,包括跨域限制、签名验证等,以防止恶意的Ajax请求。 3. **缓存控制**:DWR支持缓存响应,减少不必要的服务器请求,提高性能。 4. **远程方法调用(Remote Method ...

    dwr+maven+jetty

    DWR处理了跨域问题,提供了安全机制,以及对异步调用的异常处理。 2. Maven: Maven是Java项目管理工具,主要用于构建、依赖管理和项目信息管理。它通过一个XML文件(pom.xml)来定义项目配置,包括项目信息、依赖...

    dwr的中文简明教程下载

    8. **调试与日志**:学习如何在开发过程中利用DWR的内置调试工具和日志功能,以便于找出和解决问题。 9. **集成Spring框架**:如果你的项目使用了Spring,教程可能会介绍如何将DWR与Spring集成,实现依赖注入和事务...

    ssh+dwr 整合案例

    1. **远程调用**:DWR创建了一个安全的跨域JavaScript API,允许浏览器端的脚本直接调用服务器端的Java方法,实现数据的实时更新。 2. **批量调用与异步更新**:DWR支持批量调用多个服务器方法,以及异步处理,提高...

    java 采用dwr框架构实现ajax

    其优点在于简化了Ajax开发,减少了跨域问题,并且提供了错误处理和调试支持。 综上所述,Java借助DWR框架实现Ajax通信,能够提高Web应用的响应速度和用户体验,降低了开发复杂性。在实际项目中,结合DWR提供的各种...

    dwr简单例子

    DWR还提供了丰富的调试和日志功能,帮助开发者在开发过程中跟踪和解决问题。在示例中,可能会有相关的日志输出或调试代码。 通过学习这个简单的DWR例子,你可以了解到如何在实际项目中集成DWR,以及如何利用它来...

    dwr操作文件上传下载

    如果DWR应用涉及到跨域通信,还需要配置CORS(Cross-Origin Resource Sharing),允许来自不同源的请求。 通过以上知识点,我们可以理解如何使用DWR在Web应用中实现文件的上传和下载功能,同时也应注意安全性和...

    dwr.rar_dwr

    6. **调试工具(Debugging Tools)**:DWR提供了内置的调试工具,帮助开发者追踪和解决问题,包括错误报告和远程日志查看。 7. **自定义化(Customization)**:DWR允许高度定制,可以通过配置文件控制哪些Java类和...

    DWR简单测试例子

    DWR的核心在于它提供了一种安全的、跨域的通信方式。它通过JavaScript接口(JSR-269或JSR-173注解)动态生成JavaScript代码,这些代码可以调用服务器端的Java方法。DWR通过HTTP POST请求在客户端和服务器之间传递...

Global site tag (gtag.js) - Google Analytics