AJAX相关知识点

什么是ajax?

简单的来说就是不重新加载整个页面的情况下,更新部分网页内容。全称是Asynchronous JavaScript And XML.
ajax的优缺点:
优点:1.无需刷新页面和服务器进行通信。
2.允许你根据用户事件来更新部分页面内容。
缺点:
1.没有浏览历史,不能回退。
2.存在跨域问题(同源)。
3.seo不友好。(搜索引擎优化受到影响,爬虫爬不到)
ajax写法

//1.创建对象
const xhr = new XMLHttpRequest();
//2.初始化 设置请求方法和url
xhr.open("GET",'http://127.0.0.1:8000/server');
//3.发送
xhr.send();
//4.事件绑定处理服务端返回结果
xhr.onreadystatechange = function(){
//判断
if(xhr.readyState === 4){
//判断响应状态码 200 404 403
//2xx成功
if(xhr.status >= 200 && xhr.status<300){
 //处理结果 行 头 空行 体
 //1.响应行
 console.log(xhr.status);
 console.log(xhr,statusText);//状态字符串
 console.log(xhr.getAllResponseHeaders());//所有响应头
 console.log(xhr.response);//响应体
 }else{
  }
 }
}

axios函数方法发送ajax请求

axios({
  method:'POST',
  url:'/axios-server',
  params:{
  
  },
  headers:{
  
  },
  data:{
  
  }
}).then(response=>{
//响应的状态码
console.log(response.status);
//响应状态字符串
console.log(response.statusText);
//响应头信息
console.log(response.headers);
//响应体
console.log(response.data);
})

fetch请求

fetch('http://127.0.0.1.8000',{
        metods:'post',
        headers:{
        name:''
        },
        body:'username=admin&password=admin'
}).then(response=>{
  return response.json();
}).then(response=>{
  console.log(response);
});

同源策略
同源:协议 域名 端口号 必须完全相同。

如何解决跨域?

  1. jsonp ,前后端协作 ,axios不支持jsonp。
  2. CORS 是通过设置一个响应头来告诉浏览器,请求允许跨域,浏览器收到改下供应以后就会对响应放行。设置响应头使用通配符(“Access-Control-Allow-Origin”,"*")如下两张图。


在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值