IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue框架简单封装api -> 正文阅读

[JavaScript知识库]vue框架简单封装api

在vue根目录先执行下载axios

npm install axios --save

在src 目录下创建 utils/request.js

//request.js
import axios from "axios";
const instance = axios.create({
    //接口域名
    baseURL: "http://****:8080",
    timeout: 5000, //表示请求超过时间
    headers: {},
});

//请求拦截
instance.interceptors.request.use(
    function (config){
        //这里添加token验证
        if (token是否存在){
            config.headers.authorization=`token号`;
        }
        return config;
    },
    function (error) {
        return Promise.reject(error);
    }
)

//响应拦截
instance.interceptors.response.use(
    function (response){
        return response.data;
    },
    function (error){
        return Promise.reject(error);
    }
)

//封装get请求 axios.get(url,{params:params})
export const get = (url, params) => instance.get(url, { params });
//封装post请求 axios.post(url,{name:'阿边',age:23})
export const post = (url, data) => instance.post(url, data);
//封装删除接口
export const del = (url, params) => instance.delete(url, { params });
//封装修改接口
export const put = (url, data) => instance.put(url, data);
//export default instance;

在src下创建 api目录。此目录下放接口api

例: src下创建 api/user.js
import {get,post} from "../utils/request";

//登陆
export const login = (data)=>get('/api/login',data);
export const getUserInfo = (data)=>post('/api/getuser',data)
export const delUser = (data)=>del('/api/delUser',data)
export const upUser = (data)=>put('/api/upuser',data);

在模块中使用: pages/user.vue

<template>
<div id="user">
</div>
</template>
<script>
import { login, getUserInfo, delUser , upUser } from "@/api/user";
export default {
data(){
	return {
		token:'',
		userInfo:'',
		}
	},
	//组件创建 生命周期
	created(){
	this.getuser();
	this.login();
	},
	//方法
	methods:{
	async login(){
			let result = await login({phone:'188888888',password:'111111'});
			if(result.status === 200){
			this.token = result.token;
			}	
		},
		getInfo(){
			getUserInfo({'token':''}).then(res=>{
					console.log(res)
				})
			},
	},
	//TODO 
}
</script>
<style scoped>
</style>
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-04-14 23:43:36  更:2022-04-14 23:44:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 2:34:34-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码