123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- import axios from 'axios'
- import qs from 'Qs'
- const TIME_OUT_MS = 60 * 1000 // 默认请求超时时间
- axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'
- // // 请求拦截器
- // axios.interceptors.request.use(function (config) {
- // return config
- // }, function (error) {
- // return Promise.reject(error)
- // })
- // // 响应拦截器
- // axios.interceptors.response.use(function (response) {
- // return response
- // }, function (error) {
- // return Promise.reject(error)
- // })
- /*
- * @param response 返回数据列表
- */
- function handleResults (response) {
- let remoteResponse = response.data
- var result = {
- success: false,
- message: '',
- status: [],
- errorCode: '',
- data: {
- total: 0,
- results: []
- }
- }
- if (remoteResponse.success) {
- result.data.results = remoteResponse.data
- result.data.total = remoteResponse.total
- result.success = true
- }
- if (!remoteResponse.success) {
- let code = remoteResponse.errorCode
- if (code === 400) {
- console.log('传参错误')
- }
- result.errorCode = remoteResponse.errorCode
- result.message = remoteResponse.message
- }
- return result
- }
- function handleUrl (url) {
- //url = 'http://crowd.mooctest.net' + url
- return url
- }
- /*
- * @param data 参数列表
- * @return
- */
- function handleParams (data) {
- return data
- }
- export default {
- post (url, data) {
- return new Promise((resolve, reject) => {
- axios.post(url, qs.stringify(data)).then(
- (result) => {
- resolve(result)
- }
- ).catch(
- (error) => {
- reject(error)
- }
- )
- })
- },
- get (url) {
- return new Promise((resolve, reject) => {
- axios.get(handleUrl(url))
- .then(response => {
- resolve(response.data)
- }).catch(error => {
- reject(error)
- })
- })
- },
- put (url, data) {
- return new Promise((resolve, reject) => {
- axios.put(url, qs.stringify(data)).then(
- (result) => {
- resolve(result)
- }
- ).catch(
- (error) => {
- reject(error)
- }
- )
- })
- },
- delete (url, data) {
- return new Promise((resolve, reject) => {
- axios.delete(url, {data: qs.stringify(data)}).then(
- (result) => {
- resolve(result)
- }
- ).catch(
- (error) => {
- reject(error)
- }
- )
- })
- },
- // uploadFile (url, data, response, exception) {
- // axios({
- // method: 'post',
- // url: handleUrl(url),
- // data: handleParams(data),
- // dataType: 'json',
- // processData: false,
- // contentType: false
- // }).then(
- // (result) => {
- // response(handleResults(result, data))
- // }
- // ).catch(
- // (error) => {
- // if (exception) {
- // exception(error)
- // } else {
- // console.log(error)
- // }
- // }
- // )
- // },
- // downloadFile (url, data, fileName, exception) {
- // axios({
- // method: 'post',
- // url: handleUrl(url),
- // data: handleParams(data),
- // responseType: 'blob'
- // }).then(
- // (result) => {
- // const excelBlob = result.data
- // if ('msSaveOrOpenBlob' in navigator) {
- // // Microsoft Edge and Microsoft Internet Explorer 10-11
- // window.navigator.msSaveOrOpenBlob(excelBlob, fileName)
- // } else {
- // const elink = document.createElement('a')
- // elink.download = fileName
- // elink.style.display = 'none'
- // const blob = new Blob([excelBlob])
- // elink.href = URL.createObjectURL(blob)
- // document.body.appendChild(elink)
- // elink.click()
- // document.body.removeChild(elink)
- // }
- // }
- // ).catch(
- // (error) => {
- // if (exception) {
- // exception(error)
- // } else {
- // console.log(error)
- // }
- // }
- // )
- // },
- // uploadFileFormData (url, data, response, exception) {
- // axios({
- // method: 'post',
- // url: handleUrl(url),
- // data: data,
- // timeout: TIME_OUT_MS,
- // headers: {
- // 'Content-Type': 'multipart/form-data'
- // }
- // }).then(
- // (result) => {
- // response(handleResults(result))
- // }
- // ).catch(
- // (error) => {
- // if (exception) {
- // exception(error)
- // } else {
- // console.log(error)
- // }
- // }
- // )
- // }
- }
|