码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Vue2 开发总结 axios 二次封装 | 请求、响应、渲染的大致流程分析


    文章目录

    • 1. Axios 简介
    • 2. Vue2二次封装Axios
      • 2.1 定义简易的 Token 工具脚本文件
      • 2.2 封装 Axios
      • 2.3 使用 Axios 二次封装的脚本
      • 2.4 在 Vuex 中的 action 层使用 api
    • 3. 总结

    1. Axios 简介


    Axios GitHub 地址:https://github.com/axios/axios
    Axios 官网:https://axios-http.com/
    Axios 是用于浏览器和 node.js 的基于 Promise 的 HTTP 客户端

    Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,运用非常广泛,前端框架例如 React、Vue 都是基于 Node.js 开发的,Node.js 可以开发 Web 应用程序中的后台系统。
    (我们平时使用的 npm 命令本质上就是通过 Node.js 来运行的)

    Promise 是由 JavaScript 中实现的 ECMAScript6 规范推出的新特性,主要解决了 JS 回调地狱的问题,通常用于异步编程,可以更好的处理回调的场景

    Axios 本质上是 AJAX 的拓展版,所以它的功能和 AJAX 一样,向指定的 URL 发送请求,并处理结果。在 Github https://github.com/axios/axios 上,官方给出了许多示例。

    2. Vue2二次封装Axios


    由于我目前仅接触过Vue2,所以本篇的 Axios 是基于 Vue2版本对其应用。
    运行环境:

    • “axios”: “^0.17.1”
    • “vue”: “^2.5.2”
    • “element-ui”: “^2.0.10”

    2.1 定义简易的 Token 工具脚本文件

    在之前的学习中,我们会把用户登录信息记录到 session,但是这种方式的安全性并不高,只要拿到 浏览器的 sessionId 就可以在异地登录。而使用 token 能更好的记录用户信息,因为 token 相当于用户的身份凭证,具有时效性,既可以设置过期时间,又可以用来检验身份,同时支持在多个设备登录,为了方便,我们通过 浏览器支持的 JavaScript 内置对象 localStorage 来管理 token。
    token.js

    export function getToken() {
       
      return localStorage.token
    }
    
    export function setToken(token) {
       
      return localStorage.token = token
    }
    
    export function removeToken() {
       
      return localStorage.removeItem('token')
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    2.2 封装 Axios

    index.js

    import {
       getToken} from '@/request/token'
    
    const service = axios.create({
       
      baseURL: 'http://localhost:8888'
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    酷开系统音乐频道,用音乐治愈你!
    IntelliJ IDEA运行发布传统Java Web Application项目
    OpenAI Codex,GitHub Copilot 和cheat.sh 三个代码建议工具对比
    ES、kibana、JavaClient详细安装及操作
    Java 异步编程 (5 种异步实现方式详解)
    Java-Scanner用法
    Microsoft SQL Server 编写汉字转拼音函数
    LINUX学习------Linux自动化运维——Kubernetes网络
    Java学习 --- 成员方法
    【Qt】 FFmpeg+Qt windows 32位或者64位环境搭建
  • 原文地址:https://blog.csdn.net/Unirithe/article/details/126414090
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号