概念
Ajax全称为“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML),使用 Ajax,我们可以无刷新状态更新页面,并且实现异步提交,提升了用户体验
同步
同步方法表明调用一旦开始,调用者必须等待方法执行完成,才能继续执行后续的方法
同步请求
发起表单的请求,是同步的,必须等待服务器响应回来结果后,才可以继续向后执行,响应回来的内容,会将整个网页内容覆盖掉
异步
不同步的,各干各的
异步方法表明,方法一旦开始,立即返回,调用者无需等待其中方法执行完成,就可以继续执行后续的方法
异步请求
异步的向服务器发送请求,服务器返回内容,可以实现对网页内容做局部更新
异步请求如何实现
发送异步请求,也就是表明浏览器同时可以做多件事情
在浏览器中提供XMLHttpRequest对象,可以使用此对象向服务器代理发送请求,这样的请求就是异步的,服务器响应的方式与之前没有任何区别,响应的内容不会覆盖整个网页,响应的内容会被XMLHttpRequest对象接收,就可以在js中局部的更新网页的内容
使用XMLHttpRequest对象向另一个服务发送请求是可以发送过去的,但是浏览器不允许在当前服务页面接收另一个服务器的响应的内容
解决办法:可以在前端解决,也可以在后端解决,响应时在响应头中告诉我是安全的
用axios实现异步请求
首先在前端安装axios
npm install axios
在 main.js 中配置 axios
导入 axios
import axios from 'axios';
设置访问后台服务器地址
axios.defaults.baseURL="http://127.0.0.1:9999/api/";
将 axios 挂载到 vue 全局对象中,使用 this 可以直接访问
Vue.prototype.$http=axios;