随着Ajax技术的出现、盛行,本被忽视认为是二流编程语言的JavaScript脚本也开始了新的盛行,大量的JavaScript框架的出现如Microsoft Asp.Net Ajax、jQuery等。Ajax已经成为这些脚本框架必不可少的组成部分了,而且Ajax的开发也越来越简单化。
Ajax是一种已不是加载脚本,其最古老的实现方式是利用iframe来加载远程的脚本利用top.Function来调用父窗体的方法。利用a等HTML的target属性来指定。简单但是后期维护复杂化了并且在跨越方面很麻烦。接着就XMLHttpRequest对象的出现,一定程度的简化了Ajax的开发,但是在不同的浏览器中实现有很多大不同,FireFox中XMLHttpRequest和IE中的ActiveObject等方式,以及它仅提供了很少和简单的Ajax请求和处理。在现在出现了很多的JavaScript框架,在基于XMLHttpRequest的封装和类库的提供,极大的简化了我们的Ajax编程。其中最为出名和盛行的jQuery框架。这里需说出的是jQuery很好实现了跨域问题。
下面我就说几点自己目前想到的Ajax注意或者技巧,思维也许有点乱,请谅解,将的不好,也请原谅。
1:Ajax中的X是XML,它也可以很方便的加载XML,但是我个人觉得架子啊XML是个很不好的方式。首先大家都知道XML是一种严格的数据存储方式,有很多冗余信息。再则XML的处理也有一定的复杂性。XML能实现跨平台性,如WebService,这是WebService的优点,但是也是一个致命的缺点,它基于的XML冗余信息,所以在分布式中速度也是很慢的。
相比而言Json对象是一个轻量级的存储方式,它是以名值对的形式存储。而且JavaScript脚本本身就是一个天然的Json对象,无需转化,可以直接使用,并且现在.NET框架中提供了对Json序列化的支持.我个人观点是首选Json。
2:在服务器端为了性能等的考虑经常会有缓存,以及浏览器的缓存。有时我们需要避免,最简单的方式是加上一个时间戳,"Default.aspx?time=” + DateTime.Now。就可以避免缓存。如果你用的是Jquery的Ajax那可以直接设置cache:false禁用缓存。
3:在Ajax编程需要注意的是Content-Type,有HTML、Text、Json、XML、Script等方式。我们很多的无故的错误经常就在这里的设置。需要注意Ajax的Content-Type,以及服务端输出的Content-Type。还有就是服务器端,我们要输出前的Response.Clear(),Response.ContentType=Type,以及完成时的Response.Flush()和Response.Clos()。
4:Ajax并不是高交互、高用户体验的代表,这需要说明。我们的应用不该首选Ajax技术,因为如果Ajax技术用的不是很好,那反而会适得其反。还有就是如果要用Ajax,那我们就必须为客户准备退路,因为ajax请求很可以由于各种原因而出错。
5:Ajax必究是基于客户端脚本,这就意味在存在一定的安全隐患,很容易暴露我们的某些敏感信息。特别是网上的脚本代码糜烂,我们有些人经常会在网上Copy下来仅仅测试下就加入了我们的项目,我觉得这是一个很不好的习惯。很容易得不偿失。
时间已晚,就说这么多吧,如果你还有什么心得或建议请留言。如果你有不懂的疑问也可以留言,我会尽力和尽快回复。
Ajax是一种已不是加载脚本,其最古老的实现方式是利用iframe来加载远程的脚本利用top.Function来调用父窗体的方法。利用a等HTML的target属性来指定。简单但是后期维护复杂化了并且在跨越方面很麻烦。接着就XMLHttpRequest对象的出现,一定程度的简化了Ajax的开发,但是在不同的浏览器中实现有很多大不同,FireFox中XMLHttpRequest和IE中的ActiveObject等方式,以及它仅提供了很少和简单的Ajax请求和处理。在现在出现了很多的JavaScript框架,在基于XMLHttpRequest的封装和类库的提供,极大的简化了我们的Ajax编程。其中最为出名和盛行的jQuery框架。这里需说出的是jQuery很好实现了跨域问题。
下面我就说几点自己目前想到的Ajax注意或者技巧,思维也许有点乱,请谅解,将的不好,也请原谅。
1:Ajax中的X是XML,它也可以很方便的加载XML,但是我个人觉得架子啊XML是个很不好的方式。首先大家都知道XML是一种严格的数据存储方式,有很多冗余信息。再则XML的处理也有一定的复杂性。XML能实现跨平台性,如WebService,这是WebService的优点,但是也是一个致命的缺点,它基于的XML冗余信息,所以在分布式中速度也是很慢的。
相比而言Json对象是一个轻量级的存储方式,它是以名值对的形式存储。而且JavaScript脚本本身就是一个天然的Json对象,无需转化,可以直接使用,并且现在.NET框架中提供了对Json序列化的支持.我个人观点是首选Json。
2:在服务器端为了性能等的考虑经常会有缓存,以及浏览器的缓存。有时我们需要避免,最简单的方式是加上一个时间戳,"Default.aspx?time=” + DateTime.Now。就可以避免缓存。如果你用的是Jquery的Ajax那可以直接设置cache:false禁用缓存。
3:在Ajax编程需要注意的是Content-Type,有HTML、Text、Json、XML、Script等方式。我们很多的无故的错误经常就在这里的设置。需要注意Ajax的Content-Type,以及服务端输出的Content-Type。还有就是服务器端,我们要输出前的Response.Clear(),Response.ContentType=Type,以及完成时的Response.Flush()和Response.Clos()。
4:Ajax并不是高交互、高用户体验的代表,这需要说明。我们的应用不该首选Ajax技术,因为如果Ajax技术用的不是很好,那反而会适得其反。还有就是如果要用Ajax,那我们就必须为客户准备退路,因为ajax请求很可以由于各种原因而出错。
5:Ajax必究是基于客户端脚本,这就意味在存在一定的安全隐患,很容易暴露我们的某些敏感信息。特别是网上的脚本代码糜烂,我们有些人经常会在网上Copy下来仅仅测试下就加入了我们的项目,我觉得这是一个很不好的习惯。很容易得不偿失。
时间已晚,就说这么多吧,如果你还有什么心得或建议请留言。如果你有不懂的疑问也可以留言,我会尽力和尽快回复。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
2024年11月24日
2024年11月24日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]