使用ajax前必须了解的知识
ajax的全称:
asynchronous javascript and xml
(异步的javascript和xml)
ajax不是某种编程语言
是一种在无需重新加载整个页面的情况下能够更新部分网页的技术。
一个完整的http请求过程,有7个步骤:
1.建立TCP连接。
2.Web浏览器向Web服务器发送请求命令。
3.Web浏览器发送请求头信息。
4.Web服务器应答。
5.Web服务器发送应答头信息。
6.Web服务器向浏览器发送数据。
7.Web服务器关闭TCP连接
一个http请求一般由四部分组成:
1.http请求的方法或动作,比如是GET还是POST请求。
2.正在请求的URL。
3.请求头,包含一些客户端环境信息,身份验证信息等。
4.请求体,也就是请求正文,请求正文中可以包含客户的提交的查询字符串信息,表单信息等等。
GET:(幂等:就是一个GET请求执行一次和执行一万次的效果是一样的)
1.一般用于信息获取(查询),
2.使用URL传递参数,
3.对发送的信息的数量有限制,一般在2000个字符。
4.好处就是可以添加到书签中收藏页面。
POST:
1.一般用于修改服务器上的资源,
2.对所发送的信息的数量无限制,
3.被嵌入到http的请求体中。
一个http响应一般么由三部分组成:
1.一个数字和文字组成的状态码,用来显示请求是成功还是失败,
2.响应头,响应头也和请求头一样包含许多有用的信息,例如服务类型,日期时间,内容类型和长度等,
3.响应体:也就是响应正文
http状态码由32位数字构成,其中首位数字定义了状态码的类型:
1XX:信息类,表示收到Web浏览器请求,正在进一步处理中,
2XX:成功,表示用户请求被正确接受,理解和处理,例如:200 OK
3XX:重定向,表示请求没有成功,客户必须采取进一步的动作,
4XX:客户端错误,表示客户端提交请求有错误,例如:404 NOT Found,意味着请求中所引用的文档不存在,
5XX:服务器错误,表示服务器不能完成对请求的处理,例如:500
JSON的基本概念
1.json:javasscript对象表示法,(javascript Object Notation)
2.json是存储和交换文本信息的语法,类似XML。它采用键值对的方式来组织,北京托福易于人们阅读,同时也易于机器解析和生成。
3.json是独立于语言的,也就是不管什么语言,都可以解析json,只需要按照json的规则来就行。
json和xml比较
1.json的长度和xml格式比起来很短小。
2.json读写的速度更快
3.json可以使用javascript内建德方法直接进行解析,转换成javascript对象,非常方便。
json可以是下面类型:
1.数字(整数或浮点数),比如123,1.23.
2.字符串(在双引号中)
3.逻辑值(true或false)
4.数组(在方括号中)
5.对象(在花括号中)
6.null
解析json的方法:
1.var
jsondata={“staff”:[{“name”:”红旗”,”age”:”23”},{“name”:”小红”,”age”:”13”}]};
var
jsonbj=JSON.parse(jsondata);
alert(jsonbj.staff[0].name)
使用jquery实现ajax
1.jQuery.ajax([settings])
2.type:类型,”POST”或”GET”,默认为”GET”。
3.url:发送请求的地址。
4.dataType:预期服务器返回的数据类型,如果不指定,jquery将自动根据http包MIME信息来智能判断,一般我们采用json格式,可以设置为”json”。
5.success:是一个方法,请求成功后的回调函数,传入返回后的数据,以及包含吗成功代码的字符串。
6.error:是一个方法,请求失败
时回调用此函数。传入XMLHttpRequest对象。
跨域
1.一个域名的地址组成:
协议,子域名,主域名,端口号中任意一个不相同时,都算作不同域,
2.不同域之间相互请求资源,就算作”跨域”,
3.比如http://www.abc.com/index.html 请求
http://www.egf.com/service.php
4.jsvsscript出于安全方面的考虑,不允许跨域调用其他页面的对象,什么是跨域呢,简单的理解就是因为javascript同源策略的限制,a.com域名下的js无法操作b.com或是c.a.com域名下的对象。
5.例如www.abc.com/index.html调用https://www.abc.com/servic.php(跨域)
处理跨域的方法–代理
1.通过在同域名的web服务器端创建一个代理
2.北京服务器
3.上海服务器
4.比如北京的web服务器的后台
使用ajax前必须了解的知识的更多相关文章
- AJAX跨域调用相关知识-CORS和JSONP(引)
AJAX跨域调用相关知识-CORS和JSONP 1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容. 但是我们项目开发过程中,经常 ...
- thinkphp+jquery+ajax前后端交互注册验证
thinkphp+jquery+ajax前后端交互注册验证,界面如下 register.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...
- JSON(及其在ajax前后端交互的过程)小识
一. json介绍 json是一种轻量级的数据交换格式,规则很简单: 并列的数据之间用逗号(,)分隔: 映射用冒号(:)表示: 并列数据的集合(数组)用方括号([])表示: 映射的集合(对象)用大括号 ...
- WeX5 - AJAX跨域调用相关知识-CORS和JSONP
http://docs.wex5.com/ajax-cross-domain/ 1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容 ...
- AJAX跨域调用相关知识-CORS和JSONP
1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容. 但是我们项目开发过程中,经常会遇到在一个页面的JS代码中,需要通过AJAX去 ...
- SSM-网站后台管理系统制作(4)---Ajax前后端交互
前提:Ajax本身就为前后端交互服务的,实现功能:用户输入信息,实时判断用户的情况,这也是现在登录界面普遍流行的做法.前端js通过注释识别Controller层,该层查询返回,和之前Google验证码 ...
- 弄一个ajax笔记方便查询-基础知识篇
jQuery对Ajax做了大量的封装,jQuery采用了三层封装: 最底层的封装方法为:$.ajax() 通过最底层进一步封装了第二层的三种方法:.load().$.get().$.post() 最高 ...
- AJAX(一、基本知识)
AJAX:Asynchronous ([ə'sɪŋkrənəs; eɪ-])Javascript (['dʒɑ:və,skrɪpt])and XML 异步的Javascript和XMLAJAX不是新的 ...
- JQuery ajax 前后端传值介绍
https://jingyan.baidu.com/album/ca41422f0bf08e1eae99ed04.html?picindex=5 现在我们话不多说,开始仔细讲解一下我们ajax内部传递 ...
随机推荐
- pgsql删除重复记录
如下: DELETE FROM categories a WHERE ( a.id, a.name, a.parent_id ) ) ) 关键点:oracle中有内部id为rowid, 在postgr ...
- Linux mysql 乱码
http://www.pc6.com/infoview/Article_63586.html http://itindex.net/detail/41748-linux-mysql-5.5 http: ...
- KNN算法案例--手写数字识别
import numpy as np import matplotlib .pyplot as plt import pandas as pd from sklearn.neighbors impor ...
- Windows组决策
https://blog.csdn.net/wangjunjun2008/article/details/82426587
- JS的连等赋值
参考自,我再整理一遍. 题目如下: var a = {n:1}; var b = a; a.x = a = {n:2}; alert(a.x); alert(b.x): 输出为 undefined, ...
- ApacheHttpServer修改httpd.conf配置文件
转自:https://blog.csdn.net/dream1120757048/article/details/77427351 1. 安装完 Apache HTTP Server 之后,还需要修改 ...
- Solr的学习使用之(四)建数据库(添加Core)、表(配置schema.xml)
1.数据库数据库就相当于solr里面的核.solr4.6不能使用界面提供的的Core Admin/Add Core来建立,会报错,不懂为啥:那就采用最 简单的办法:把solr下载包里面的\solr-4 ...
- 【ASE高级软件工程】Alpha 阶段 backend组 scrum1 记录
本次会议于11月4日,19:10 在微软北京西二号楼13478召开,持续40分钟. 与会人员:Haifeng Chen, Zhikai Chen, Hao Wang, Jia Ning 请假: Xin ...
- DTS
一.DTS的加载过程 如果要使用Device Tree,首先用户要了解自己的硬件配置和系统运行参数,并把这些信息组织成Device Tree source file.通过DTC(Device Tr ...
- vue,一路走来(5)--微信登录
微信登录 今天又是周末了,想着博客还没记录完成.是的,下面记录一下微信登录遇到的问题. 在我的项目中,个人中心是需要完成授权登录才可以访问的,首先在定义路由的时候就需要多添加一个自定义字段requir ...