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前必须了解的知识的更多相关文章

  1. AJAX跨域调用相关知识-CORS和JSONP(引)

    AJAX跨域调用相关知识-CORS和JSONP 1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容. 但是我们项目开发过程中,经常 ...

  2. thinkphp+jquery+ajax前后端交互注册验证

    thinkphp+jquery+ajax前后端交互注册验证,界面如下 register.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...

  3. JSON(及其在ajax前后端交互的过程)小识

    一. json介绍 json是一种轻量级的数据交换格式,规则很简单: 并列的数据之间用逗号(,)分隔: 映射用冒号(:)表示: 并列数据的集合(数组)用方括号([])表示: 映射的集合(对象)用大括号 ...

  4. WeX5 - AJAX跨域调用相关知识-CORS和JSONP

    http://docs.wex5.com/ajax-cross-domain/ 1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容 ...

  5. AJAX跨域调用相关知识-CORS和JSONP

    1.什么是跨域 跨域问题产生的原因,是由于浏览器的安全机制,JS只能访问与所在页面同一个域(相同协议.域名.端口)的内容. 但是我们项目开发过程中,经常会遇到在一个页面的JS代码中,需要通过AJAX去 ...

  6. SSM-网站后台管理系统制作(4)---Ajax前后端交互

    前提:Ajax本身就为前后端交互服务的,实现功能:用户输入信息,实时判断用户的情况,这也是现在登录界面普遍流行的做法.前端js通过注释识别Controller层,该层查询返回,和之前Google验证码 ...

  7. 弄一个ajax笔记方便查询-基础知识篇

    jQuery对Ajax做了大量的封装,jQuery采用了三层封装: 最底层的封装方法为:$.ajax() 通过最底层进一步封装了第二层的三种方法:.load().$.get().$.post() 最高 ...

  8. AJAX(一、基本知识)

    AJAX:Asynchronous ([ə'sɪŋkrənəs; eɪ-])Javascript (['dʒɑ:və,skrɪpt])and XML 异步的Javascript和XMLAJAX不是新的 ...

  9. JQuery ajax 前后端传值介绍

    https://jingyan.baidu.com/album/ca41422f0bf08e1eae99ed04.html?picindex=5 现在我们话不多说,开始仔细讲解一下我们ajax内部传递 ...

随机推荐

  1. hihocoder 1015 : KMP算法(kmp)

    传送门 Description 小Hi和小Ho是一对好朋友,出生在信息化社会的他们对编程产生了莫大的兴趣,他们约定好互相帮助,在编程的学习道路上一同前进. 这一天,他们遇到了一只河蟹,于是河蟹就向小H ...

  2. vsCode python的函数跳转功能失效修复

    经常遇到VsCode失效的问题,很有可能是插件的原因. 关闭插件提示功能 "python.pythonPath": "/usr/bin/python", 关闭所 ...

  3. Eclipse + pydev插件

    在Eclipse中安装pydev插件 启动Eclipse, 点击Help->Install New Software...   在弹出的对话框中,点Add 按钮.  Name中填:Pydev,  ...

  4. c.vim

    放在 /usr/share/vim/vim80/syntax/c.vim 最后: syn match cFunctions "\<[a-zA-Z_][a-zA-Z_0-9]*\> ...

  5. LCT题单(自己的做题情况反馈)(转自Flash)

    LCT题单(自己的做题情况反馈)(转自Flash) 随时进Flash Hu的LCT看一发 也可以看一下我自己的风格的板子 开始 维护链信息(LCT上的平衡树操作) [X] 洛谷P3690 [模板]Li ...

  6. scite配置文件及常用设置

    在linux系统中,SciTE的用户设置文件为 ~/.SciTEUser.properties,优先级高于全局配置文件. scite是个不错的IDE工具,只是本人发现,在开发团队中和其他成员的编辑工具 ...

  7. python学习第六天--匿名函数、过滤、映射

    匿名函数 lambda表达式 过滤器 filter(判断函数,可迭代对象) 会根据提供的函数对指定序列做过滤 映射 map(判断函数,可迭代对象) 会根据提供的函数对指定序列做映射

  8. direct模式下的收发

    生产者 import pika import sys connection = pika.BlockingConnection(pika.ConnectionParameters( host='loc ...

  9. C语言接口

    struct i_foo * foobar_foo(void); //返回接口指针struct foo_object * foo_create(struct i_foo *iface, void *d ...

  10. JS 页面繁简字转换

    // 本js用于客户在网站页面选择繁体中文或简体中文显示,默认是正常显示,即简繁体同时显示// 在用户第一次访问网页时,会自动检测客户端语言进行操作并提示.此功能可关闭// 本程序只在UTF8编码下测 ...