npm i luch-request -S
github
npm run build
DCloud/luch-request
import Request from '@/utils/luch-request/index.js' //
// import Request from 'luch-request' // npm
const http = new Request();
GET
http.get('/user/login', {params: {userName: 'name', password: '123456'}}).then(res => {
}).catch(err => {
})
//
http.get('/user/login', {
params: {userName: 'name', password: '123456'}, /* url */
header: {}, /* header */
dataType: 'json',
// customcustomObject.assign()
custom: {auth: true}, // authtruetoken
// #ifndef MP-ALIPAY
responseType: 'text',
// #endif
// #ifdef H5 || APP-PLUS || MP-ALIPAY || MP-WEIXIN
timeout: 60000, // H5(HBuilderX 2.9.9+)APP(HBuilderX 2.9.9+)2.10.0
// #endif
// #ifdef APP-PLUS
sslVerify: true, // ssl 5+AppHBuilderX 2.3.3+
// #endif
// #ifdef H5
withCredentials: false, // cookiesH5HBuilderX 2.6.15+
// #endif
// task, optionsoptions
getTask: (task, options) => {
// setTimeout(() => {
// task.abort()
// }, 500)
},
// statusCode
validateStatus: function validateStatus(statusCode) {
return statusCode >= 200 && statusCode < 300
}
}).then(res => {
}).catch(err => {
})
POST
http.post('/user/login', {userName: 'name', password: '123456'} ).then(res => {
}).catch(err => {
})
//
http.post('/user/login', {userName: 'name', password: '123456'}, {
params: {}, /* url */
header: {}, /* header */
dataType: 'json',
// customcustomObject.assign()
custom: {auth: true}, // authtruetoken
// #ifndef MP-ALIPAY
responseType: 'text',
// #endif
// #ifdef H5 || APP-PLUS || MP-ALIPAY || MP-WEIXIN
timeout: 60000, // H5(HBuilderX 2.9.9+)APP(HBuilderX 2.9.9+)2.10.0
// #endif
// #ifdef APP-PLUS
sslVerify: true, // ssl 5+AppHBuilderX 2.3.3+
// #endif
// #ifdef H5
withCredentials: false, // cookiesH5HBuilderX 2.6.15+
// #endif
// task, optionsoptions
getTask: (task, options) => {
// setTimeout(() => {
// task.abort()
// }, 500)
},
// statusCode
validateStatus: function validateStatus(statusCode) {
return statusCode >= 200 && statusCode < 300
}
}).then(res => {
}).catch(err => {
})
upload
http.upload('api/upload/img', {
params: {}, /* url */
// #ifdef APP-PLUS || H5
files: [], // files filePath name AppH5 2.6.15+
// #endif
// #ifdef MP-ALIPAY
fileType: 'image/video/audio', //
// #endif
filePath: '', //
// customcustomObject.assign()
custom: {auth: true}, // authtruetoken
name: 'file', // key , key
// #ifdef H5 || APP-PLUS
timeout: 60000, // H5(HBuilderX 2.9.9+)APP(HBuilderX 2.9.9+)
// #endif
header: {}, /* header */
formData: {}, // HTTP form data
// task, optionsoptions
getTask: (task, options) => {
// task.onProgressUpdate((res) => {
// console.log('' + res.progress);
// console.log('' + res.totalBytesSent);
// console.log('' + res.totalBytesExpectedToSend);
//
// //
// if (res.progress > 50) {
// uploadTask.abort();
// }
// });
}
}).then(res => {
// res.data JSON.parse
}).catch(err => {
})
vue-admin-beautiful vue/cli 4
option
Request MethodObject/String/ArrayBuffer
0.0import { http } from '@/utils/luch-request/index.js'
setConfig
request
setConfig
/header token
interceptors.request
setConfig
setConfig
npm
<a href="https://ext.dcloud.net.cn/plugin?id=392">luch-request</a>
370306150