1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- //使用方法
- // require("promise.prototype.finally").shim(); //使用时请引用finally
- // import {request} from '../../request/request'
- // request({
- // url: '/room/list',
- // }).then(res => {
- // console.log(res)
- // }).catch(err => {
- // console.log(err)
- // }).finally(() => {
- // Loading.close()
- // })
- //配置文件
- import axios from 'axios'
- export function request(config) {
- let baseURL;
- // uEnvDev;开发者模式,点击运行
- if (process.env.NODE_ENV === 'development') {
- // TODO
- baseURL = "http://b2bcnapi.sailuntire.com/allstell/test/app"
- }
- // uEnvProd;生产模式,点击发行
- if (process.env.NODE_ENV === 'production') {
- // TODO
- baseURL = "http://b2bcnapi.sailuntire.com/allstell/test/app";
- };
- let newVar = axios.create({
- baseURL: baseURL,
- timeout: 10000
- });
- // 响应拦截器
- newVar.interceptors.response.use({},
- error => {
- console.log('err' + error)
- let { message } = error;
- if (message == "Network Error") {
- message = "后端接口连接异常";
- }
- else if (message.includes("timeout")) {
- message = "系统接口请求超时";
- }
- else if (message.includes("Request failed with status code")) {
- message = "系统接口" + message.substr(message.length - 3) + "异常";
- }
- console.log(message)
- return Promise.reject(error)
- }
- )
- return newVar(config);
- }
- //在uni-app中使用对app有效果,h5不需要
- axios.defaults.adapter = function (config) {
- config.headers.token = uni.getStorageSync('token');
- return new Promise((resolve, reject) => {
- var settle = require('axios/lib/core/settle');
- var buildURL = require('axios/lib/helpers/buildURL');
- uni.request({
- method: config.method.toUpperCase(),
- url: config.baseURL + buildURL(config.url, config.params, config.paramsSerializer),
- header: config.headers,
- data: config.data,
- dataType: config.dataType,
- responseType: config.responseType,
- sslVerify: config.sslVerify,
- complete: function complete(response) {
- response = {
- data: response.data,
- status: response.statusCode,
- errMsg: response.errMsg,
- header: response.header,
- config: config
- };
- settle(resolve, reject, response);
- }
- })
- })
- }
|