更新记录
2.0.1(2022-10-21)
下载此版本
首次更新
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 3.6.7 app-vue app-nvue |
√ |
√ |
√ |
√ |
√ |
√ |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
√ |
√ |
√ |
√ |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
一、utils文件
1.1、base.js
let url
if(process.env.NODE_ENV == "development"){
url = '' // 你自己的(测试)接口地址
}else{
url = '' // 你自己的(生产)接口地址
}
export default { url }
1.2、request.js
import base from './base.js' // 引入base.js
// 请求封装
const request = (options) =>{
return new Promise((resolve,reject)=>{
uni.request({
// #ifndef H5
url: base.url+options.url, // App+小程序
// #endif
// #ifdef H5
url: options.url, // H5端
// #endif
method: options.method || 'GET',
data: options.data || {},
header: options.headers ||{
// Authorization: 'Bearer ' + uni.getStorageSync('token') //请求头添加token
// 'token': uni.getStorageSync('token'),
'Content-Type': 'application/json',
},
complete:res=>{
if(res.statusCode == 200){
resolve(res.data)
}else{
uni.showToast({ title: '出错了...', icon:'none' })
reject(res.data)
}
}
})
})
}
export default request
1.3、api.js
import request from './request.js' // 引入request.js
const login = (data) =>{
let option = {
// #ifndef H5
url:'/student/login',
// #endif
// #ifdef H5
url:'/api/student/login',
// #endif
data: data,
}
return request(option)
}
const yzm = (data) => {
let option = {
method:'POST',
// #ifndef H5
url:'/student/code',
// #endif
// #ifdef H5
url:'/api/student/code',
// #endif
data: data
}
return request(option)
}
const mdch = (data) => {
let option = {
method:'POST',
// #ifndef H5
url:'/student/createWord',
// #endif
// #ifdef H5
url:'/api/student/createWord',
// #endif
data: data,
headers: {
"Content-Type": "application/x-www-form-urlencoded" //请求头传 form-data
},
}
return request(option)
}
// 导出
export default{
login,yzm,mdch
}
1.4、main.js中,全局注册api
// 全局注册api
import api from '@/utils/api.js'
1.5、manifest.json中,配置H5端跨域请求
"h5" : {
"devServer" : {
"disableHostCheck" : true,
"proxy" : {
"/api2" : {
"target" : "http://test.cn", // 你自己的接口地址(预发布)
"changeOrigin" : true, //是否跨域
"secure" : false, // 设置支持https协议的代理
"pathRewrite" : {
"^/api2" : ""
}
},
"/api" : {
"target" : "http://test.cn", // 你自己的接口地址(正式)
"changeOrigin" : true,
"secure" : false,
"pathRewrite" : {
"^/api" : ""
}
}
}
},
"router" : {
"base" : "./",
"mode" : "hash"
},
"title" : "test"
}
1.6、调用Api
methods: {
async login(){
this.loading = true
const res = await this.$api.login(this.user)
if(res.code == 200){
const {data} = res
this.loading = false
}
},
}