iot-axios v1.1.9
iot-vue项目脚手架工具
介绍
基于axios封装,适用于iot-开放平台项目的http请求插件。
安装
Vue2版本:npm install iot-axios2
Vue3版本:npm install iot-axios
说明
入参
1>autoerror:string (兼容header_isPromptAbnormalInfo)
0:代表以前旧写法(默认值)
1:自动提示后台异常信息(Message提示)
2:不自动提示后台异常信息,用来请求中自定义catch方法
3:自动提示后台异常信息(MessageBox.alert提示)
注:如果需要1、3自动提示,自行引入elementUI/element-plus样式
2>hnoloading:bool
false:请求时自动显示loading(默认值)
true:请求时不显示loading
3>encryptLevel:string
0:参数为json类型数据(默认值)
1:参数为application/x-www-form-urlencoded类型数据
2:参数为multipart/form-data类型数据
4>headSignLog:bool
false:不打印header参数antiReplaySign(默认值)
true:打印header参数antiReplaySign
5>headSignLog:number
0:不携带设备调用接口中的header默认配置项
1:携带设备调用接口中得header默认配置项
6>noLogin:bool
false:接口403需要自动跳转登录(默认值)
true:接口403不需要自动跳转登录
7>noHeadSign:bool
false:增加防重放、灰度等参数(默认值)
true:不增加防重放、灰度等参数
8>qiCustormCode:string | number
'00000': 默认值
其他:自定义请求成功code值
9>qiCustormMsg: string
'retInfo': 默认值
其他:自定义请求失败错误信息key值
登录过期回调函数:window.loginDateCallback
使用
1>iotAxios:正常axios库
2>iotExtpost:
请求地址为:/managecenter-api/ext/${serveName}/post 的请求,参数(params,serveName):
params: 请求入参
serveName:地址中${serveName}的值,默认为hardware
3>iotExtget:
请求地址为:/managecenter-api/ext/${serveName}/get 的请求,参数(params,serveName):
params: 请求入参
serveName:地址中${serveName}的值,默认为hardware
示例
import { axiosapi } from '@/assets/js/api';
import { iotAxios, iotExtpost, iotExtget} from 'iot-axios';
export default {
  setup () {
    //iotAxios
    iotAxios({
      method: 'post',
      url: `${axiosapi}/intelligenceapp/user/app/list`,
      data: {
        pageNum: 1,
        pageSize: 10,
        queryParam: '',
        hnoloading: true
      }
    }).then((res) => {
      console.log(res)
    })
    //iotExtpost
    iotExtpost({
      autoerror: 1,
      url: '/modelType/appTypeInfoList'
    }).then((res) => {
      console.log(res)
    })
    //iotExtget
    iotExtget({
      headSignLog: 1,
      url: '/modelType/appTypeInfoList'
    }).then((res) => {
      console.log(res)
    })
  }
}封装
window.loginDateCallback = function(){	//登录过期时会自动调用
  let curPath = window.location.href
  if(curPath) {
    const route = `./index.html#/login?backurl=${encodeURIComponent(curPath)}`
    if(top!=self) {
      window.parent.location.replace(route)
    } else {
      window.location.replace(route)
    }
  }
}
import { iotAxios } from 'iot-axios'
const env = process.env.NODE_ENV  
export const baseapi = env === 'development' ? '/apiprod' : ''
/**
  * @description: 封装请求类
  * @param {method} method 请求方式
  * @param {path} path 请求路径
  * @param {params} params 参数
  * @param {headers} headers 请求头
  */
export const iotRequest = (method, path, params, headers) => {
  if (method.toLowerCase() === 'get') {
    return iotAxios.get(baseapi + path, { params: params }, headers)
  } else {
    return iotAxios.post(baseapi + path, params, headers)
  }
}
// 使用
import { iotRequest } from '@/apis/api'
export const fnLogout = (params) => {
  return iotRequest('post', '/developercenter-api/index/logout', params)
}2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago