`
cakin24
  • 浏览: 1398275 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Ajax需要注意的几个问题

阅读更多
在应用Ajax时,需要注意安全问题、性能问题和浏览器兼容性问题,下面进行具体介绍。
一 安全问题
随着网络的普及,安全问题已经是一个不可忽略的重要问题了。由于Web本身就是不安全的,所以尽可能降低Ajax的安全风险就显得尤为重要了。Ajax应用主要面临以下安全问题。
l、JavaScript本身的安全性
虽然JavaScript的安全性已逐步提高,提供了很多受限功能,包括访问浏览器的历史记录、上传文件、改变菜单栏等。但是,当在Web浏览器中执行JavaScript代码时,用户允许任何人编写的代码运行在自己的机器上,这就为移动代码自动跨越网络来运行提供了方便条件,从而给网站带来了安全隐患。
为了解决这一潜在的危险,浏览器厂商在一个sandbox(沙箱)中执行JavaScript代码,沙箱是一个只能访问很少计算机资源的密闭环境,从而使Ajax应用不能读取或写入本地文件系统。虽然这会给程序开发带来困难,但时,它提高了客户端JavaScript的安全性。
2、数据在网络上传输的安全问题
当采用普通的HTTP请求时,请求参数的所有的代码都是以明码的方式在网络上传输的。对于一些不太重要的数据,采用普通的HTTP请求即可满足要求,但是如果涉及到特别机密的信息,这样做则是不行的,因为某些恶意的路由,则可能读取传输的内容。为了保证HTTP传输数据的安全,可以对传输的数据进行加密,这样即使被看到,危险也是不大的。虽然对传输的数据进行加密,可能会对服务器的性能有所降低,但对于敏感数据,以性能换取更高的安全,还是值得的。
3、客户端调用远程服务的安全问题
虽然Ajax允许客户端完成部分服务器的工作,并可以通过JavaScript来检查用户的权限,但是通过客户端脚本控制权限并不可取,一些解密高手可以轻松绕过JavaScript的权限检查,直接访问业务逻辑组件,从而对网站造成威胁。通常情况下,在Ajax应用中,应该将所有的Ajax请求都发送到控制器,由控制器负责检查调用者是否有访问资源的权限。
 
二 性能问题
由于Ajax将大量的计算从服务器移到了客户端,这就意味着浏览器将承受更大的负担,而不再是只负责简单的文档显示。由于Ajax的核心语言是JavaScript,而JavaScript并不以高性能知名。另外,JavaScript对象也不是轻量级的,特别是DOM元素耗费了大量的内存。因此,如何提高JavaScript代码的性能对于Ajax开发者来说尤为重要。下面介绍几种优化Ajax应用执行速度的方法。
l、尽量使用局部变量,而不使用全局变量。
2、优化for循环。
3、尽量少用eval,每使用eval都需要消耗大量的时间。
4、将DOM节点附加到文档上。
5、尽量减少点“.”号操作符的使用。
 
三 浏览器兼容性问题
Ajax使用了大量的JavaScript和Ajax引擎,而这些内容需要浏览器提供足够的支持。目前提供这些支持的浏览器主要分为两大类
一类是IE浏览器,在IE浏览器中,只有IE 5.0及以上版本才支持;
另一类是非IE浏览器,例如Firefox、Mozilla1.0、Savari1.2及以上版本。
虽然IE浏览器和非IE浏览器都支持Ajax,但是它们提供的创建XMLHttpRequest对象的方式是不一样,所以使用Ajax的程序必须测试针对各个浏览器的兼容性。
1
0
分享到:
评论

相关推荐

    Ajax 缓存问题,Ajax 缓存问题

    针对这个问题,有几种常见的解决策略: 1. **在GET请求的URL中添加参数**:可以在URL后面附加一个随机数或者当前时间的毫秒数,这样每次请求的URL都不相同,浏览器会将其视为新的请求。例如: ``` ...

    几个简单的Ajax例子

    在开发过程中,我们需要注意跨域问题,如果Ajax请求的目标URL与当前页面不在同一个源下,可能会触发浏览器的安全限制。这时,服务器端需要设置CORS策略,允许来自不同源的请求。 此外,对于SEO(搜索引擎优化)和无...

    ajax跨域问题的解决办法

    ajax跨域问题的解决办法 ajax跨域问题是指在使用ajax技术时遇到的跨域限制问题,即ajax请求不能跨域访问...解决ajax跨域问题需要选择合适的解决方案,并且需要注意其他的一些问题,以确保web应用程序的安全性和性能。

    ajax安装包,安装程序ajax

    在实际开发过程中,开发者需要注意几个关键点: - **状态管理**:由于Ajax请求是异步的,开发者需要管理请求的状态,确保数据正确更新。 - **浏览器兼容性**:不同的浏览器对Ajax的支持程度不同,需要进行兼容性测试...

    Ajax Test Ajax Test

    Ajax的工作流程通常包括以下几个步骤: 1. **创建XMLHttpRequest对象**:在JavaScript中,通过`new XMLHttpRequest()`创建一个实例。 2. **初始化请求**:调用`open()`方法设置请求类型(GET、POST等)、URL和是否...

    ajax使用简单demo

    整个流程包括以下几个步骤: 1. **创建XMLHttpRequest对象**:在JavaScript中,使用`new XMLHttpRequest()`创建一个对象实例。 2. **初始化请求**:调用`open()`方法设置请求类型(GET、POST等)、URL和是否异步...

    ajax几个实例

    根据提供的文件内容,我们可以归纳出以下几个与Ajax相关的知识点: ### 1. 创建 XMLHttpRequest 对象 在 JavaScript 中,创建一个 `XMLHttpRequest` 对象是进行 Ajax 请求的基础。代码中提供了两种方式来创建这个...

    ASP.NET Ajax 写的一个用户注册实例

    ASP.NET AJAX 是微软提供的一种强大的Web开发技术,它结合了ASP.NET的强大功能和AJAX(Asynchronous JavaScript and XML)的异步交互性,...同时,也要注意安全问题,例如防止SQL注入、XSS攻击等,确保用户数据的安全。

    解决ajax跨域问题

    为了解决AJAX跨域问题,开发者可以采用以下几种策略: 1. JSONP(JSON with Padding) JSONP是一种绕过同源策略的方法,它利用了`<script>`标签不受同源策略限制的特点。JSONP的工作原理是服务器提供一个可被调用的...

    ajax验证码 验证码ajax 生成中文验证码

    要实现Ajax验证码,我们需要以下几个步骤: 1. **服务器端生成验证码**:服务器上需要有一个生成验证码的逻辑,这通常涉及到随机生成一组中文字符或数字,然后将其存储到服务器会话(session)或者Cookie中,以供...

    AJAX仿网易导航

    在“AJAX的常用导航”中,我们通常会涉及以下几个核心知识点: 1. **XMLHttpRequest对象**:这是AJAX的核心,用于在后台与服务器通信。它创建一个HTTP请求,并在响应准备好时处理这些数据。通过XMLHttpRequest,...

    ajax安装包 ajax所有安装文件 赶紧下载回去用用吧 赶紧下载回去用用吧 赶紧下载回去用用吧 练习ajax啊

    在Ajax中,主要涉及以下几个关键组件: 1. **XMLHttpRequest对象**:这是Ajax的核心,JavaScript通过创建XMLHttpRequest实例来发送HTTP请求。它提供了open()方法来建立连接,send()方法发送请求,以及...

    ASP.NET AJAX 几个安装包含义及应用说明

    本文将详细介绍几个关键的ASP.NET AJAX安装包及其应用。 1. **ASP.NET 2.0 AJAX Extensions 1.0**:这是ASP.NET AJAX的核心组件,为ASP.NET 2.0平台提供了Ajax支持。它包含System.Web.Extensions命名空间,扩展了...

    ajax_jar包

    在Java中使用Ajax,通常涉及到以下几个核心概念: 1. **XMLHttpRequest对象**:这是Ajax的基础,它是JavaScript中的一个内置对象,负责在后台与服务器进行通信。通过创建XMLHttpRequest实例,可以发送HTTP请求,并...

    Ajax查看,比较好的Ajax查询

    在进行Ajax开发时,需要注意一些问题: - **兼容性**:确保代码兼容各种浏览器,尤其是老版本的IE,可能需要使用特定的解决方案,如jQuery的$.ajax()函数。 - **用户体验**:提供适当的反馈,让用户知道请求正在...

    ajax的实例,eclips下开发

    Ajax操作主要围绕XMLHttpRequest对象展开,主要包括以下几个步骤: 1. 创建XMLHttpRequest对象。 2. 配置请求,如设置HTTP方法(GET或POST)、URL和是否异步。 3. 发送请求,可能需要附带额外数据(POST请求)。 4. ...

    PHP AJAX JSONP实现跨域请求使用范例_ajax如何解决跨域请求

    在使用 JSONP 时,我们需要注意以下几点: 首先,我们需要确保服务器端的数据是安全的,以免被恶意攻击所利用。 其次,我们需要确保客户端的数据处理是正确的,以免出现错误。 最后,我们需要注意浏览器的限制,...

    Struts AJAX文件上传

    在Struts框架中集成AJAX文件上传,通常需要以下几个关键步骤: 1. **配置Struts Action**:首先,你需要创建一个Struts Action来处理文件上传请求。这个Action类需要实现`com.opensymphony.xwork2.ActionSupport`...

    ajax企业网站系统源码

    5. **安全性考虑**:使用Ajax的网站需要特别注意安全性问题,如防止跨站脚本攻击(XSS)、跨站请求伪造(CSRF)等,同时,对敏感数据的处理和传输也需要加密。 【标签】:“企业网站系统”意味着这个源码适用于搭建企业...

Global site tag (gtag.js) - Google Analytics