blog

axios ラッパー API インターフェース 3

##使用するファイルの作成...

Sep 6, 2020 · 2 min. read
シェア

## myaxios.js ファイルの作成

 import axios from "axios"
 import {Toast} from "vant"
 //開発モードと本番モードでBaseUrlアドレスを切り替える
 if (process.env.NODE_ENV == 'development'){ //development 
 axios.defaults.baseURL = 'http://...:84'
 } else if (process.env.NODE_ENV == 'debug') { 
 axios.defaults.baseURL = 'https://..om';
 }else if (process.env.NODE_ENV == 'production') { //production 
 axios.defaults.baseURL = 'https://..om';
 }
 //タイムアウトを設定する
 axios.defaults.timeout = 6000; 
 //リクエストの遮断
 axios.interceptors.request.use(
 config=> {
 const token = localStorage.adminToken;
 token && (config.headers.authorization = 'Bearer ' +token)
 Toast.loading({
 className:'toast-loading'
 })
 return config
 }
 )
 //レスポンスのインターセプト
 axios.interceptors.response.use(
 response=>{
 Toast.clear()
 if(response.data.code !=200){
 Toast(response.data.msg);
 }
 return response
 }
 )
 //get 
 export function get(url,params){
 return new Promise((resolve,reject)=>{
 axios.get(url,{
 params:params
 }).then(response=>{
 resolve(response.data)
 }).catch(error=>{
 reject(error)
 })
 })
 }
 //post 
 export function post(url,data = {}){
 return new Promise((resolve,reject)=>{
 axios.post(url,data).then(response=>{
 resolve(response.data);
 },err=>{
 reject(err)
 })
 })
 }

使う

1. import *as myaxios from "../../myaxios"
2. 
 myaxios.post("/api/app/collect",{
 course_basis_id: this.course_id,
 type:1
 }).then(res=>{
 cosnole.log(res)
 })
Read next

spring_amqp

1.padding 2.message 3.profile 4.messageConverter

Sep 5, 2020 · 1 min read