接触Ajax,那时候的Ajax支持还不是很好,都要涉及底层,没有现成的框架给你调用。现在把常见的问题列举如下。

  1、编码问题

  注意AJAX要取的文件是UTF-8编码的。GB2312编码传回BROWSE后中文会乱码。如果用VBScript的话还可以转化,但是VBScript只有IE支持。

  所以,选择UTF-8编码是一劳永逸的办法。

  2、清除服务器端文件的缓存。

  当用XMLHTTP取回一个服务器端的文件,文件会缓存在浏览器端。下次再取文件时,不会再去服务器取文件。所以,对于刷新频繁的文件,一定要指定文件的过期时间。

  3、什么时候使用XML

  Ajax里的X指的就是XML,可是真的XML就是最好的解决方案吗?XML和JSON相比,在传递同等量的信息时,XML文件更大。所以往往JSON是更好的选择。不过,你还可以直接输出Javascript执行,这样的效率往往更高:不需要写复杂的回调函数。不过安全问题也要更加注意。health.hljmlyfcyy.com

  4、两种Ajax的方式

  一些人的基础可能还不是很扎实,并不非常了解Ajax的原理,那你知道Ajax由哪两种方式来实现吗?

  最古老的一种是iframe来加载一个包含js的网页,这个网页里的脚本用 top.function来调用parent页面里的函数。但是,你可以指定a的target和form的target,这样就不用序列化表单,实际上能很方便地发送表单。当然后期就稍微有点麻烦,出现问题也不容易解决。

  后来就是xmlhttp组件的方式。什么时候挑选什么方式,这也是一种技巧。

  5、跨域问题

  如果一个脚本不在同一个域,两者就不能相互调用。如果iframe里是其他域的网页,就不能访问parent页的具体内容。如果需要访问远程的XML,比如RSS FEED,建议可以用服务器端脚本来中转。在访问量不是非常大的情况下还是很很好的一个解决办法。不过,翻阅JQuery手册发现它能调用(执行)跨域的脚本,具体怎么做的还不是很清楚。大家可以下载JQUERY未加密的版本来研究下。

  6、安全问题

  在服务器端,虽然客户端能预处理很多东西,你仍要注意一句话:一切来自客户端的变量都是有害的。不在Ajax的情况下很多程序员往往会放松警惕。这使得安全问题更隐蔽。如果是开源程序的话那么问题就会在网友面前马上暴露出来;黑盒的情况下,往往被入侵了还是找不出原因。rl.hrbfc120.com

  结语:实际上在这个框架横行的年代直接编写Ajax实现代码的机会并不多,很多JS框架都集成了AJAX调用函数,一些服务器端的框架,例如THINKPHP也集成了AJAX。但是,理解一些底层的东西,还是有利于排除BUG,提高AJAX应用的性能的。

转载于:https://www.cnblogs.com/hljmly/p/5457312.html

Ajax应用需要注意的事项相关推荐

  1. thinkphp ajax volist,thinkphp中volist标签在ajax使用有哪些注意事项

    这次给大家带来thinkphp中volist标签在ajax使用有哪些注意事项,下面就是实战案例,一起来看一下. 背景 在一个ThinkPHP的复杂页面(包含volist)中实现volist标签显示Jq ...

  2. jquery 的ajax请求示例和注意事项

    最近很多人问我ajax该怎么用,怎么访问后台,怎么取得数据页面显示 写一个简单的ajax访问: $.ajax({ url: ctx +"/meeting/getMeetingRoomMap& ...

  3. ajax请求l类型,jquery 的ajax请求示例和注意事项

    最近很多人问我ajax该怎么用,怎么访问后台,怎么取得数据页面显示 写一个简单的ajax访问: $.ajax({ url: ctx +"/meeting/getMeetingRoomMap& ...

  4. AJAX跨域请求数据原理与案例

    1.如何通过AJAX跨域请求数据 AJAX通过jsonp来实现跨域请求数据,通过设置dataType(jquery)为jsonp即可. 2.AJAX如何通过jsonp实现跨域(来源于其他网站资料) J ...

  5. php在登录页面使用ajax,使用Ajax安全的登录界面

    这次给大家带来使用Ajax安全的登录界面,使用Ajax登录界面的注意事项有哪些,下面就是实战案例,一起来看一下. 登录界面是信息系统提供的必备的功能,是提供给用户提供维护信息的接口.接下来,我来带领大 ...

  6. jq 编码 php解码,jQuery编码转化base64通过AJAX上传

    这次给大家带来jQuery编码转化base64通过AJAX上传,jQuery编码转化base64通过AJAX上传的注意事项有哪些,下面就是实战案例,一起来看一下. 本文实例讲述了jQuery实现文件编 ...

  7. Ajax 的全面总结

    Ajax在前端开发中有着举足轻重的地位,关于Ajax的使用和注意事项一直是一个重要的话题,借此机会,本文希望对Ajax做一个全面的总结,彻底揭开Ajax的神秘面纱. 一.什么是Ajax Ajax(As ...

  8. springmvc中ajax,springmvc中ajax处理

    1.使用HttpServletResponse处理--不需要配置解析器 @Controller public class AjaxController { @RequestMapping(" ...

  9. 使用ajax async,Ajax请求async有哪些方式?应该如何使用

    这次给大家带来Ajax请求async有哪些方式?应该如何使用,Ajax请求async的注意事项有哪些,下面就是实战案例,一起来看一下. test.html代码: asy.js代码:function t ...

最新文章

  1. JVM内存管理学习总结(一)
  2. maven setting 配置详解
  3. 理解浮动元素——怎么使用它们、它们有什么问题以及怎么解决这些问题。
  4. js判断数组中有没有指定元素
  5. vsftpd虚拟用户使用实验报告
  6. Android系统进阶
  7. FFmpeg Video Editor
  8. linux添加swap分区【转】
  9. 三菱modbusRTU通讯实例_三菱FX系列PLC如何接线并通过RS232进行下载程序
  10. 计算机运维项目管理,工程项目管理软件的运维分为几个阶段
  11. 百度地图生成器,图标消失,中文乱码和自定义名字undefind
  12. Reac版本的Ant Design树形控件的使用、搜索关键字标红、只显示搜索匹配中的数据
  13. 如何学习(Java)
  14. 数据科学家必须知道的10个深度学习架构
  15. LTE网络PRACH参数规划
  16. 汽车/车载/自动驾驶/辅助驾驶相关认知记录
  17. CAS . . . .
  18. oracle核销预付账款,AP模块外币预付款核销的CNY尾差问题
  19. Nye Lubricants UNIFLOR RHEOLUBE NYOGEL
  20. 【Django 学习笔记】1、基础概念和MVT架构

热门文章

  1. 利用 %20 替换 空格
  2. foreach语句的的解析
  3. html css导航栏字体图标,HTML+CSS入门之两种图标字体库
  4. eclipse中查看某个方法(函数)被谁调用
  5. 操作系统动态库调用过程
  6. Linux(CentOS)挂载U盘、移动硬盘以及文件拷贝、备份
  7. Linux Shell——-if -eq,if -ne,if -gt[笔记]
  8. linux7设备的挂载,centos7磁盘分区与挂载解析
  9. _ASSERTE(_CrtIsValidHeapPointer(pUserData))错误详解
  10. oracle查询大小写敏感参数,让Oracle 大小写敏感 表名 字段名 对像名