更新记录
1.1.2(2023-08-09)
优化
1.1.1(2023-08-09)
优化
1.1.0(2023-07-19)
重写
查看更多
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
app-vue app-nvue |
√ |
√ |
√ |
√ |
√ |
√ |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
√ |
√ |
√ |
√ |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
超级轻量request请求函数,支持多域名、支持自定义header,支持vue2,vue3,nvue,支持async+await
安装教程 使用 HBuilderX 导入插件
使用方法:
1、最重要!!!和pages目录同级新建config文件夹,下面新建config.js 内容如下
export default {
baseUrl: '', // 接口地址前缀 无需设置
otherUrl: 'http://other.com', // 其他接口地址前缀,为了兼容多个域名或者第三方服务接口
testUrl: 'http://test.com', // 开发地址前缀
productionUrl: 'http://pro.com', // 正式地址前缀
loginPage: '/pages/login/login', // 服务器statusCode返回401强制跳转的登录页
headerKey: 'Authorization', // header的名称一般是Authorization或者token,以你们项目为准(如果不需要设置请求头,就把headerKey和headerValue去掉)
headerValue: uni.getStorageSync('token') || '', // header的值 在登录成功后一定要将token赋值给config.headerValue,并且存到缓存
showErrorMessage(res) { // 自定义后端的报错提示
if (res.code === 99999) {
return '系统错误'
}
}
}
2、在App.vue中写如下代码(自动识别运行环境,为了无需打包时再修改接口前缀)
import config from '@/config/config'
onLaunch: function() {
if (process.env.NODE_ENV === 'development') {
// 开发环境 运行
// #ifdef H5
config.baseUrl = location.origin;
// #endif
// #ifndef H5
config.baseUrl = config.testUrl;
// #endif
} else {
// 生产环境 发行
config.baseUrl = config.productionUrl;
}
}
3、h5开发配置代理,解决开发时的浏览器跨域问题(如不开发h5,请跳过)
// 根目录创建vue.config.js 代码如下
module.exports = {
devServer: {
disableHostCheck: true,
proxy: {
"/api/": {
target: "http://192.168.1.132:8000", //开发
// target: "https://www.baidu.com", //正式
changeOrigin: true,
pathRewrite: {
"^/prefix": ""
}
}
}
},
}
和config目录同级新建api文件夹下新建login.js
import config from '@/config/config'
import request from '@/uni_modules/rt-request/js_sdk/index'
/**
* @function request
* @param {string} api - 接口地址
* @param {string} method 默认值为GET,method支持GET POST PUT DELETE等方法(请注意各个平台兼容性)
* @param {string} data - 参数
* @param {string} contentType - 默认为json,也支持form (application/x-www-form-urlencoded)
* @param {string} url - 接口前缀,默认值为config.baseUrl 也支持其他例如config.baseUrl2
*
*/
//GET请求示例
export function login(data){
return request('/transport_order/driver/wechat_login',data)
}
//POST请求示例(contentType是application/json)
export function getWeather(data){
return request('/api/get_weather','POST',data)
}
// POST请求示例(contentType是application/x-www-form-urlencoded)
export function getMap(data){
return request('/transport_order/driver/get_map','POST',data,'form')
}
// 其他域名请求
export function getBaidu(data){
return request('/transport_order/driver/get_map','POST',data,'json',config.baseUrl2)
}
在页面vue中使用vue2写法
import { login } from '@/api/login'
data() {
return {
info:{
name:'ssss',
password:'123456'
}
}
},
methods:{
async toLogin() {
const res = await login(this.info)
console.log(res)
}
}
vue3 setup写法
<script setup>
import { reactive,toRefs } from 'vue'
import { login } from '@/api/login'
const data = reactive({
info:{
name:'ssss',
password:'123456'
}
})
// 登录
const toLogin = async () => {
const res = await login(data.info)
console.log(res)
}
</script>
如果插件对您有一点帮助,请给个五星好评,感谢支持
如有不懂 请加qq 965969604