h5跨域解决方案(考虑小程序请求问题,本人项目问题已解决) | 您所在的位置:网站首页 › h5跨域请求 › h5跨域解决方案(考虑小程序请求问题,本人项目问题已解决) |
这个方法百分百能解决,不解决你来打我!本人参考了网上很多方法都没解决,最后一点小调整解决的,上代码 vite.config.js 这个文件我自己uniapp的项目里面没有,在网上搜了好像没找到自动生成该文件的方法,我直接建了一个没太大问题,下面是配置,一般都是使用/api,但是我一直没解决问题就出在这里,我把api改成了apis就没问题了 import { defineConfig } from 'vite'; import uni from '@dcloudio/vite-plugin-uni'; export default defineConfig({ plugins: [ uni() ], server: { proxy: { '/apis': { target: 'http://**************/api', // 目标后端服务地址 changeOrigin: true, rewrite: path => path.replace(/^\/apis/, ''), } } } })因为这里使用了代理所以request.js封装请求的时候基地址就需要改成 const base_url = '/apis'但是如果和我一样做的是小程序和h5兼容的项目就会发现,改变基地址后小程序里面就会报这个错误 所以我们现在需要在代码里面判断一下在h5里面执行的代码和小程序里面执行的代码 /*#ifdef MP*/ const base_url = 'http://***************/api' // 刚刚vite.config.js里面代理的地址 /*#endif*/ /*#ifdef H5*/ const base_url = '/apis' /*#endif*/ |
CopyRight 2018-2019 实验室设备网 版权所有 |