Taro编译H5页面本地开发进行代理配置.md
Taro本地开发H5页面的时候发起请求需要开启代理配置,否则就会发生跨域请求,记录一下相关注意点
1、配置代理服务器
在项目的config
目录下有一个index.js
文件,里面是配置各个平台的编译相关配置,如果只是H5页面需要配置代理,解决跨域配需要在h5
属性下添加如下代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
h5: {
devServer: {
proxy: {
// 这里代表这凡是以 /api 开头的接口都将在这里被代理
'/api': {
// 代理的目标服务器,也就是你要发请求的那个服务器
target: 'https://www.baidu.com/',
changeOrigin: true,
pathRewrite: {
// 此处的路径替换是不做任何替换,也就是说api还是接着原来的api
'^/api': '/api'
}
}
}
}
}
2、代码里发送请求写法
代码里面发送请求的时候,比如:https://www.baidu.com/test
,那么对应的发送path
就变成了 /api/test
。
由于京东的kpi现在不重要了,导致taro更新缓慢,记录一下uniapp的跨域配置,这里说明一下使用Vue3+TS来构建的项目。
1
2
3
4
5
6
7
8
9
10
// 本配置写到vite.config.ts文件里面去
server: {
proxy: {
'/api': {
target: 'http://v2ss.cn',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, "")
}
}
}
如果请求地址是:http://v2ss.cn/test
那么请求的代码如下:
1
2
3
4
5
http({
method: 'POST',
url: '/api/test',
data
})
可以去拦截器里面加一下这个地址前的api
本文由作者按照 CC BY 4.0 进行授权