首页 > web前端 > jqury.crossajax:利用 Flash 完美解决 AJAX 跨域请求(解决GBK编码问题)

jqury.crossajax:利用 Flash 完美解决 AJAX 跨域请求(解决GBK编码问题)

张宴大哥的AJAXCDR启发,制作jquery.crossajax,相比AJAXCDR的优点:

1、基于jquery,方便部署

2、不受utf-8编码限制,在请求gbk编码的静态页时很有用

3、回调函数封装,没有全局变量污染

4、js引用放在head区域也可,无需考虑等待装载问题,避免了“不支持该方法”等错误

jquery.crossajax的用法说明:

1
$.request(url,data,'function(data){callback(data)}',method,charset)

url:是ajax请求的地址

data:是post提交的数据,以 var1=data1&var2=data2 的形式收集,表单项目请自行收集,没有请使用空字符”"。注意,如果method是GET方法,此处会自动忽略

callback:是回调函数,自动第一个参数为ajax返回的内容

method:ajax请求方法,GET(默认)和POST

charset:处理返回内容的编码,支持gbk 和 utf-8(默认)

注意:跨域还是会受url地址所在服务器crossdomain.xml文件设置的限制

打包下载(附AS3源码):jquery.crossajax package (200)

注:如果自行修改request.as,编译request.as时需要用到flex4 sdk(请到adobe open source下载),cmd命令行输入“mxmlc request.as”即可(需要JAVA环境)

分类: web前端 标签: , , ,
  1. 2011年6月13日09:24 | #1

    request.swf 必须要放在 demo.html 同一个域名下面吗? 我想把它一起放在 服务端 求解释

  2. 2011年8月6日05:06 | #2

    request.swf放在哪里都可以,只是需要自己修改jquery.crossajax.js文件的swfpath

  3. 落叶飘
    2011年8月23日16:29 | #3

    楼主,你的这个工具不能返回JOSN数据呀
    如:{“state”:true}

  4. 2011年9月9日14:32 | #4

    json数据得你自己来处理,利用jquery的parseJSON格式化返回的字符串就可以得到json数据

  5. ylkj
    2012年1月9日14:47 | #5

    建议增加访问无响应时,返回提示

  6. 蓝天
    2012年3月6日17:43 | #6

    request.swf 这个放在远端有问题

  7. 2012年3月6日18:52 | #7

    @ylkj
    呵呵,源码是开放的,你可以自己修改~

  8. 2012年3月6日18:53 | #8

    @蓝天
    注意crossdomain.xml文件配置

  9. 蓝天
    2012年3月6日19:53 | #9

    修改源码?是修改那一个,flash那个嘛。

  1. 本文目前尚无任何 trackbacks 和 pingbacks.