123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>拦截器</title>
- <!-- 引入axios -->
- <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
- </head>
- <body>
- <button id="btn1">按钮1</button>
- <script>
-
- axios.defaults.baseURL = "http://localhost:3000"
- //axios的拦截器可以对请求或响应进行拦截,在请求发送前和响应读取前处理数据
- //拦截器只对当前的实例有效
- // 添加请求拦截器
- axios.interceptors.request.use(
- function (config) {
- console.log("拦截器执行了");
- //config 表示axios中的配置对象
- //console.log(config);
- //config.data.name = "猪二爷"
- config.headers["Authorization"]= `Bearer ${localStorage.getItem("token")}`
- // 在发送请求之前做些什么
- return config;
- }, function (error) {
- // 对请求错误做些什么
- return Promise.reject(error);
- });
- document.getElementById("btn1").onclick = () =>{
- axios
- .post("students",{name:"二师兄"})
- .then((res) => {
- console.log(res.data);
- })
- .catch((err) => {
- console.log("出错了",err);
- })
- }
- </script>
-
- </body>
- </html>
|