当前位置: 首页 > article >正文

引入 axios,根据 api 文档生成调用接口

起步 | Axios Docs

安装 axios

npm install axios

生成 api 调用接口【可选】

https://github.com/ferdikoomen/openapi-typescript-codegen

  1. 安装
npm install openapi-typescript-codegen --save-dev
  1. 然后执行生成代码
# http://localhost:8805/api/user/v3/api-docs:这个是接口文档url【返回的json】
# ./generated: 代表的是生成的路径
# axios: 指定的客户端 axios
openapi --input http://localhost:8805/api/user/v3/api-docs --output ./generated --client axios

  1. 测试
import { Swagger3Service } from '../generated/services/Swagger3Service'

  setTimeout(() => {
    Swagger3Service.test()
  }, 1000)

如果想要自定义请求参数,怎么办?

使用代码生成器提供的全局参数修改对象

https://github.com/ferdikoomen/openapi-typescript-codegen/blob/master/docs/openapi-object.md

export const OpenAPI: OpenAPIConfig = {
  BASE: 'http://localhost:3000/api',
  VERSION: '2.0',
  WITH_CREDENTIALS: false,
  CREDENTIALS: 'include',
  TOKEN: undefined,
  USERNAME: undefined,
  PASSWORD: undefined,
  HEADERS: undefined,
  ENCODE_PATH: undefined,
};

直接定义 axios 请求库的全局参数,比如全局请求响应拦截器

Interceptors | Axios Docs

import axios from "axios";

axios.interceptors.request.use(
  function (config) {
    // Do something before request is sent
    return config;
  },
  function (error) {
    // Do something with request error
    return Promise.reject(error);
  }
);

// Add a response interceptor
axios.interceptors.response.use(
  function (response) {
    console.log("响应", response);
    // Any status code that lie within the range of 2xx cause this function to trigger
    // Do something with response data
    return response;
  },
  function (error) {
    // Any status codes that falls outside the range of 2xx cause this function to trigger
    // Do something with response error
    return Promise.reject(error);
  }
);


http://www.kler.cn/a/387558.html

相关文章:

  • 5G 现网信令参数学习(3) - RrcSetup(1)
  • Oracle RAC的thread
  • Java面试要点02 - 自动装箱与拆箱的原理与性能解析
  • 第四十三章 Vue之mapMutations简化mutations操作
  • 【随机种子】Random Seed是什么?
  • 小白初入Android_studio所遇到的坑以及怎么解决
  • AI大模型重塑软件开发流程:从自动化编码到智能协作的未来展望
  • 【MM-Align】学习基于输运的最优对齐动力学,快速准确地推断缺失模态序列
  • 【春秋云镜】CVE-2023-2130
  • springboot系列--web相关知识探索七
  • 使用 pd.ExcelWriter 创建多工作表 Excel 文件的详细教程
  • JAVA中的string和stringbuffer
  • SQL进阶技巧:如何计算复合增长率?
  • 如何在Python中实现一个简单的搜索引擎:从零开始的指南
  • Vue中父组件通过v-model向子组件传对象参数
  • 图像识别算法优化:提升识别精度与速度
  • 记一次文件包含刷题(伪协议篇)
  • Leetcode 买卖股票的最佳时机 Ⅱ
  • 思考:linux Vi Vim 编辑器的简明原理,与快速用法之《 7 字真言 》@ “鱼爱返 说 温泉哦“ (**)
  • 华为云计算知识总结——及案例分享
  • kaggle学习 eloData项目(2)-数据清洗
  • C/C++中预处理器指令有哪些,举例说明其用途。
  • 2.索引:SQL 性能分析详解
  • Intel AMT技术在服务器硬件监控中的应用与解读
  • C语言--结构体详解
  • Ubuntu下如何管理多个ssh密钥