h5跨域解决方案(考虑小程序请求问题,本人项目问题已解决) 您所在的位置:网站首页 h5跨域请求 h5跨域解决方案(考虑小程序请求问题,本人项目问题已解决)

h5跨域解决方案(考虑小程序请求问题,本人项目问题已解决)

2024-07-14 04:34| 来源: 网络整理| 查看: 265

这个方法百分百能解决,不解决你来打我!本人参考了网上很多方法都没解决,最后一点小调整解决的,上代码

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 实验室设备网 版权所有