Ajax程序设计(第九讲).ppt

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Ajax程序设计(第九讲)

Web Ajax程序设计 第8讲 第9章 常见问题 主要内容 编码的处理 控制缓存 选择合适的请求方式 控制多个Ajax请求; Ajax请求的安全性 9.1 编码处理 1. 文件编码与声明编码 中文操作系统中,编码存储编码是gb2312,而一般传输采用的编码是Utf-8,若两者采用的不一致,则会出现乱码; 例如:页面存储使用的是gb2312,而在<meta>标签中声明的是utf-8,则在打开页面时,会出现乱码; 解决:使用保存与声明编码一致; 2. Ajax请求乱码 原因:主要是因为XMLHttpRequest使用的解码格式与服务器发送的数据编码不一致; 解决方法: 将后台编码设置为utf-8; 后台输出数据之前,在header中指定采用的编码格式 header(“Content-type:text/html;charset=gb2312”); 例子 HelloWorld(RequestTime.java) 9.1.3 发送数据乱码 原因 Ajax post请求发送数据的编码格式是utf-8,若后台页面采用的不是utf-8编码,则会产生乱码; 解决 在接收数据处理之前,先对数据进行转换,转换成需要的编码格式即可; 发送数据前,对所发送数据进行强制转换成uft-8: utf8Str=encodeURIComponent(str); 所有乱码总的解决办法 让程序的前后使用的编码一致,均采用utf-8编码; * * 第6章 Hello World!分析 主要内容 XMLHttpRequest对象详解; 搭建基本的Ajax开发框架; 6.1 XMLHttpRequest对象详解 try { var xmlhttp = new XMLHttpRequest(); } catch(e) { var xmlhttp = new ActiveXObject('Microsoft.XMLHTTP'); } xmlhttp.open('GET','hello_world.php',true); xmlhttp.onreadystatechange = function() { if(xmlhttp.readyState == 4 && xmlhttp.status == 200) { alert(xmlhttp.responseText); } } xmlhttp.send(); 1. 初始化请求 使用XMLHttpRequest对象的open方法初始化请求; xmlhttp.open(‘GET’, ‘service/hello_world.php’, true); open方法的3个参数 ‘GET’: 定义请求的方法为get方法; ’service/hello_world.php’: 定义了请求的目标地址; true: 定义了请求为异步请求(常省略); 完整的open方法原型 oXMLHttpRequest.open( strMethod, strUrl, boolAsync, strUser, strPassword); 各参数如表6-1所示(下页) 字符串型; 用于验证密码部分; 若用户名为空,则此参数被忽略; strPassword 字符串型; 用于服务器验证身份; strUser 布尔型 指定请求是否为异步方式,默认为true; 异步请求时,每当状态改变,则会调用onreadystatechange属性指定的函数; boolAsync 字符串型; 请求的URL地址,绝对或相对地址; strUrl 字符串型 http请求方法:post, get, put, head, delete等 大小写不敏感; strMethod 说明 参数 表6-1 open方法参数列表 2. 设置请求HTTP头信息 oXMLHttpRequest.setRequestHeader( strHeader, strValue); 参数说明 strHeader: 字符串型,头名称; strValue: 字符串型,值; 注意 若已存在已命名的HTTP头,则被覆盖; 此方法必须在open方法后调用; 常见用法 提交post方法时,设置编码类型 oXMLHttpRequest.setRequestHeader( “Content-Type”, ‘application/x-www-form-urlencoded’); 提交XML oXMLHttpRequest.setRequestHeader( “Content-Type”, ‘text/xml’); 提交COOKIE: oXMLHttpRequest.setRequestHeader( “COOKIE”, ‘cookiename=cooki

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档