Ajax和Json的介绍(一)
Ajax简介:
优点:
1.Ajax是一种网页开发技术,异步JavaScript和XML;(这样叫的原因是是因为ajax传递数据是用json格式的,而json和xml又类似,都是以键值对,josn是"name":"wp",xml的是:<name>wp</name>)
2.Ajax能异步交互,局部刷新;
3.Ajax能减少服务器压力;
4.AJax能提高用户体验;
Ajax与传统交互比较:
传统交互:网页整体刷新,服务器压力大,用户体验不好;Ajax交互:局部刷新,服务器压力小,用户体验好。
Ajax核心:XMLHttpRequest
XMLHttpRequest:用于在后台与服务其交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的局部进行刷新。IE5和IE6对应的XMLHttpRequest对象为ActiveXObject对象
1.XmlHttpRequest对象进行后台请求:
(1)建立与服务器的连接:open(method,URL,async);
method为请求,值为get或post
URL参数:指定请求的地址
async:是否异步,一般为true(异步表示程序请求服务器的同时,程序可以继续执行;如果是同步的话,javascript会等到服务器响应就绪才继续执行,如果服务器繁忙或缓慢,应用程序会挂起或停止)
(2)发送请求:send(content);
(3)设置头信息:setRequestHeader(header,value)
如:setRequestHeader("Content-type","application/x-www-form-urlencoded")
Content-type表示编码属性;
form的enctype属性:
a) application/x-www-form-urlencoded: 窗体数据被编码为名称/值对。这是标准的编码格式 。当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串(name1=value1&name2=value2...),然后把这个字串append到url后面,用?分割,加载这个新的url。 当action为post时候,浏览器把form数据封装到http body中,然后发送到server。 如果没有type=file的控件,用默认的application/x-www-form-urlencoded就可以了。 但是如果有type=file的话,就要用到multipart/form-data了。浏览器会把整个表单以控件为单位分割,并为每个部分加上Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件name)等信息,并加上分割符(boundary)。
b)multipart/form-data: 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。
c)text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。
2.XMLHttpRequest对象响应服务器
(1)接收:onreadystatechange回调函数
(2)readyState表示XMLHttpRequest的状态信息:
0:XMLHttpRequest对象没有完成初始化
1:XMLHttpRequest对象开始发送请求
2:XMLHttpRequest对象的请求发送成功
3:XMLHttpRequest对象开始读取响应,还没结束
4:XMLHttpRequest对象读取响应结束
(3)status:HTTP的状态码
200:服务器响应正常
400:无法找到请求的资源
403:没有访问权限
404:访问的资源不存在
500:服务器内部出错
获取来自服务器的响应:
responseText:获得 响应的文本内容
responseXML:获得响应的XML文档对象
JSON简介:
1.它是javascript对象表示法
2.它是存储和交换文本信息的语法,类似XML
3.它比xml更小,更快,更易解析
4.用evla()处理json字符串
5.json格式为:值/对。所以我们在用ajax进行请求的时候将头信息设置为:application/x-www-form-urlencoded
6.JSON 值可以是:
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在方括号中)
- 对象(在花括号中)
- null
7.json文件
- JSON 文件的文件类型是 ".json"
- JSON 文本的 MIME 类型是 "application/json"
MIME就是邮件传输类型,这里就想着json的传输类型为:application/json
Java小生店铺:
Pc端:http://shop125970977.taobao.com/index.htm
手机端:搜索 java小生店铺
希望店铺的资料能帮助到你!!!

Ajax和Json的介绍(一)的更多相关文章
- [Javascript,JSON] JQuery处理json与ajax返回JSON实例
转自:http://www.php100.com/html/program/jquery/2013/0905/5912.html [导读] json数据是一种经型的实时数据交互的数据存储方法,使用到最 ...
- (转)JQuery处理json与ajax返回JSON实例
son数据是一种经型的实时数据交互的数据存储方法,使用到最多的应该是ajax与json配合使用了,下面我来给大家介绍jquery处理json数据方法. 一.JSON的一些基础知识. JSON中对象通过 ...
- jquery ajax返回json数据进行前后台交互实例
jquery ajax返回json数据进行前后台交互实例 利用jquery中的ajax提交数据然后由网站后台来根据我们提交的数据返回json格式的数据,下面我来演示一个实例. 先我们看演示代码 代码如 ...
- MyEclipse下Struts2配置使用和Ajax、JSON的配合
原创文章,转载请注明:MyEclipse下Struts2配置使用和Ajax.JSON的配合 By Lucio.Yang 新手,初学Struts2的配置,同时尝试与Ajax通过JSON交互.首先介绍M ...
- Json.Net系列教程 1.Json.Net介绍及实例
原文 Json.Net系列教程 1.Json.Net介绍及实例 本系列教程假设读者已经对Json有一定的了解,关于Json在这里不多说.本系列教程希望能对读者开发涉及到Json的.Net项目有一定的帮 ...
- ajax使用json
json是什么什么的废话不说了,去百度吧.我这里介绍一下我为何要使用json.我使用ajax响应返回值时,项目中需求要返回多个值,不能只返回一个值.这时候就想起来用到json了.这可能只是json的一 ...
- Ajax传递json数据简介和一个需要注意的小问题
Ajax传递json数据 Ajax操作与json数据格式在实际中的运用十分广泛,本文为大家介绍一个两者相结合的小案例: 项目结构 我们新建一个Django项目,在里面创建一个名为app01的应用: p ...
- Springboot+ajax传输json数组以及单条数据的方法
Springboot+ajax传输json数组以及单条数据的方法 下面是用ajax传输到后台单条以及多条数据的解析的Demo: 结构图如下: 下面是相关的代码: pom.xml: <?xml v ...
- ASP.NET 5 - $.ajax post JSON.stringify(para) is null
JavaScript 代码: var para = {}; para.id = $("#ad-text-id").val(); para.title = $("#ad-t ...
随机推荐
- pip 指定版本
要用 pip 安装特定版本的 Python 包,只需通过 == 操作符 指定,例如: pip install -v pycrypto==2.3 将安装 pycrypto 2.3 版本.
- Deploy .NET Core with Docker
Creating a .NET Core project If you already have an existing .NET Core project you are more than wel ...
- 查询的model里面 一般都要有一个要返回的model做属性 ;查询前要传入得参数,查询后返回的参数 都要集合在一个model中
查询的model里面 一般都要有一个要返回的model做属性
- group by具有去重的功能
group by具有去重的功能
- iOS后台运行播放无声音频 测试可行
如果打回来了,就自认倒霉吧 制作无声音频. @interface AppDelegate () { NSInteger count; } @property(strong, nonatomic)NST ...
- Android热修复原理
参考:https://www.cnblogs.com/popfisher/p/8543973.html 一. AndFix AndFix的原理就是方法的替换,把有bug的方法替换成补丁文件中的方法. ...
- lemon special judge模板
/* argv[1]:输入文件 argv[2]:选手输出文件 argv[3]:标准输出文件 argv[4]:单个测试点分值 argv[5]:输出最终得分的文件 argv[6]:输出错误报告的文件 */ ...
- 普通Splay详解
预备知识: 二叉搜索树(BST) 至于BST,随便看一下就可以, 我们知道二叉搜索树是O(logN)的,那我们为什么要用平衡树呢? 之前我们了解到,BST的插入是小的往左子树走,大的往右子树走,如果凉 ...
- zabbix 自定义 nginx 监控模板
打开zabbix首页→配置→模板→创建模板模板名称:Template App NGINXagent 需添加自定义监控项:UserParameter=nginx.status[*],/bin/bash ...
- 本文之后都以Vol1来指代
本文参考文档是<64-ia-32-architectures-software-developer-vol-1-manual>(本文之后都以Vol1来指代),介绍了x86架构的基础.这些基 ...