IOS开发-跨域访问DWR方法

用Phonegap做手机客户端,服务器用spring+DWR,需要在手机端访问服务器的方法,需要做以下配置,可以参见http://www.iteye.com/topic/337460:

服务器DWR配置(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>  

手机客户端JS

<script type=‘text/javascript‘ src=‘/Ajax_chat/dwr/engine.js‘></script>
    <script type=‘text/javascript‘ src=‘/Ajax_chat/dwr/util.js‘></script>
    <script type="text/javascript" src=‘http://www.myspace.com:8080/DWR_cross/dwr/interface/TestCross.js‘></script>  

    <script type="text/javascript">
        function sendMsg(){
            DWREngine.setMethod(DWREngine.ScriptTag);
            TestCross.greeting(DWRUtil.getValue("userName"),function(data){alert(data);});
        }
    </script>

其他服务器端的java、dwr.xml没有特殊之处。需要指出的是客户端js中第3行为需要跨站的DWR方法所在,至于第2、3行,根据需要来吧。

时间: 2024-08-06 01:05:21

IOS开发-跨域访问DWR方法的相关文章

jQuery 跨域访问问题解决方法

浏览器端跨域访问一直是个问题, 多数研发人员对待js的态度都是好了伤疤忘了疼,所以病发的时候,时不时地都要疼上一疼.记得很久以前使用iframe 加script domain 声明,yahoo js util 的方式解决二级域名跨域访问的问题. 时间过得好快,又被拉回js战场时, 跨域问题这个伤疤又开疼了. 好在,有jquery帮忙,跨域问题似乎没那么难缠了.这次也借此机会对跨域问题来给刨根问底,结合实际的开发项目,查阅了相关资料,算是解决了跨域问题..有必要记下来备忘. 跨域的安全限制都是指浏

jQuery 跨域访问问题解决方法(转)

转自:http://www.jb51.net/article/21213.htm 浏览器端跨域访问一直是个问题, 多数研发人员对待js的态度都是好了伤疤忘了疼,所以病发的时候,时不时地都要疼上一疼.记得很久以前使用iframe 加script domain 声明,yahoo js util 的方式解决二级域名跨域访问的问题. 时间过得好快,又被拉回js战场时, 跨域问题这个伤疤又开疼了. 好在,有jquery帮忙,跨域问题似乎没那么难缠了.这次也借此机会对跨域问题来给刨根问底,结合实际的开发项目

Jetty Cross Origin Filter解决jQuery Ajax跨域访问的方法

当使用jQuery Ajax post请求时可能会遇到类似这样的错误提示 XMLHttpRequest cannot oad http://xxxxxx. Origin http://xxxxxx is not allowed by Access-Control-Allow-Origin. 这是Ajax跨域访问权限的问题,服务器端不接受来自另一个不同IP地址的由脚本文件发出的http请求.解决这个问题需要在服务器端进行配置使服务器端可以接受来自不同域的脚本文件的http请求.一个简单的解决方法是

Flash完美跨域访问的方法

首先,你要确定以下几点,否则可能无法实现: 1.你要跨到哪个域,你必须能管理那域上文件,因为这里要放一个通行文件. 2.你的Flash如果只有SWF,那不一定能实现,因为有时,Flash的AS中,要加入一句话.如果你是跨域调图片.视频一类的,可以用通行文件的方法.通行文件制作方法,请将以下代码存为 crossdomain.xml ,并放到要跨域的目标站点根目录下面.就是说,你的FLASH在 a.com ,你要访问 b.com 上的资源,你就要确定 http://b.com/crossdomain

前后端分离开发,跨域访问的apche设置

1,如何让Apache支持跨域访问呢? 步骤: 修改httpd.conf,windows中对应的目录是:C:\wamp\bin\apache\Apache2.4.4\conf\httpd.conf 把LoadModule headers_module modules/mod_headers.so 前面的注释删除 修改  改为:  即: <Directory />    AllowOverride none    Require all granted    Header set Access-

jquery下利用jsonp跨域访问实现方法

$.ajax({ async:false, url: '', // 跨域URL type: 'GET', dataType: 'jsonp', jsonp: 'jsoncallback', //默认callback data: mydata, //请求数据 timeout: 5000, beforeSend: function(){ //jsonp 方式此方法不被触发.原因可能是dataType如果指定为jsonp的话,就已经不是ajax事件了 }, success: function (jso

java 设置允许ajax XMLHttpRequest 请求跨域访问

在非IE下,使用XMLHttpRequest 不能跨域访问, 除非要访问的网页设置为允许跨域访问. 将网页设置为允许跨域访问的方法如下: Response.AddHeader("Access-Control-Allow-Origin", "*"); 或指定域名下可以访问: Response.AddHeader("Access-Control-Allow-Origin", "http://www.1688hot.com:80")

解决跨域访问

解决跨域访问的方法 1.用响应头 response.setHeader("Access-Control-Allow-Origin","*");//允许哪些服务器访问 response.setHeader("Access-Control-Allow-Methods","GET POST");//允许的提交方式 2.使用代理 3.JSONP 原理:通过JavaScript标签来访问服务器,并接受服务器返回的数据来实现跨域访问 js

cors解决Web跨域访问问题

首先了解一下什么是跨域以及解决的几种常见方式. 跨域,指的是浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的,是浏览器施加的安全限制. 所谓同源是指,域名,协议,端口均相同. 举例: 相对于http://store.company.com/dir/page.html 常见的解决跨域访问的方法: 1.JSONP2.window.name + iframe3.hash + iframe4.postMessage5.CORS6.WebSockets 概念科普: CORS是W3c工作草案,它定