Ajax 笔记 01

01 ajax的基本使用

ajax五步骤:

1.构建异步请求对象

2.调用open方法 传入请求方式 服务器地址等参数

3.调用send方法 发起网络请求

4.注册请求对象的状态改变事件

5.在状态改变事件里面 判断当前状态 并取得返回值

02 get方式向服务器发送数据

ajax的get方式向服务器提交数据:

ajax.open('请求方式','服务器地址?键1=值1&键2=值2.....')

03 ajax的post方式向服务器发送数据

ajax的post方式向服务器发送数据:

ajax对象.send('键1=值1&键2=值2.....')

前提是ajax必须设置一个请求头 才能使得post数据提交成功

设置请求头:

ajax对象.setRequestHeader("键","值");

ajax对象.setRequestHeader("Content-type","application/x-www-form-urlencoded")

ajax对象.setRequestHeader("Content-type","multipart/form-data")

ajax对象.setRequestHeader("Content-type","application/json")

响应:

响应码:

200 'ok'

404 'not found'

304 '从缓存中读取'

302 转发

500 'internal error' 服务器内部错误

请求头:

包含本次请求的一些相关信息

比如 请求的地址

当前网页的数据的地址

提交数据内容的类型

提交的数据的长度

数据的格式

数据的编码格式

响应头:

服务器版本

服务器语言类型

服务器返回的数据类型

数据长度

GET与POST的区别:

GET:

提交的参数在请求地址的后面拼接

参数大小限制3~4k

get偏向于数据获取

get相对速度快

get相对不安全

get请求可以被加入收藏夹 有历史记录 会被加入书签

POST:

提交的数据在send里面(隐式传递)

参数的大小没有限制

(体积大的数据可以使用mulltipart/form-data格式进行二进制流 分段进行传递)

post偏向于提交数据

post相对速度慢

post相对安全

post请求不可以被加入收藏夹 没有历史记录

04 JQ中ajax的使用

jq的ajax方法 可以进行全配置 的访问服务器

$.ajax(option对象)

option对象的常用属性:

url 服务器地址

type 请求方式(get/post)

data:{ } 提交的参数

success : function(){ } 成功的回调

error : function(){ } 失败的回调

timeout:3000 请求的超时时间

headers : { } 设置自定义请求头

dataType : " " 返回数据类型的预处理

不常用属性:

beforeSend:function(xhr){ } 网络请求发起之前

跨域属性:

jsonp

jsonpCallback

相关推荐
badhope33814 分钟前
当所有AI都在抄同一份作业:前端模板的趋同、困局与破局
前端·ai·ai编程·前端开发·tailwind·ui设计
光影少年1 小时前
RN的Fabric 渲染流程
运维·前端·javascript·react native·react.js·fabric
__zRainy__1 小时前
React开始:直接在网站中使用React.js
前端·react.js·前端框架
用户059540174462 小时前
大模型长记忆评测踩坑实录:2000条错位记忆,让我排查了整整3小时
前端·css
码林鼠2 小时前
webpack的基本配置
前端·webpack·node.js
用户938515635073 小时前
React Router 进阶:路由守卫、登录鉴权与状态传递
前端·javascript·全栈
kyriewen3 小时前
我重写了自己用了两年的防抖节流Hook——发现里面藏着3个隐藏bug
前端·javascript·面试
阿祖zu3 小时前
芝士就是力量!开源私有化部署与 GitHub 双向同步的个人知识笔记 App
前端·后端·ios
漂流瓶jz3 小时前
Webpack开发环境:观察模式/webpack-dev-server/HMR热更新
前端·javascript·webpack
IT_陈寒3 小时前
SpringBoot自动配置失效?这个隐藏配置坑了我一整晚
前端·人工智能·后端