apisix 路由 路径改写(路径替换)-路由地址截取-url截取 解决方案

apisix和NGINX功能是类似的,只是会更丰富灵活,那么在nginx转发过程中,我们能轻松的的实现请求路径替换,例如/chat3/v1/api,转发为/v1/api

但在apisix中配置稍有不同,具体配置如下:

路径改写-静态改写(只有精确的路径才会这样用)

需求:

        /chat3/v1/api  改写为  /v1/api

实现方式如下截图所示

路径改写-正则改写

需求:

        /chat3/v1/api  改写为  api/v1/api

实现如下截图

路径截取-正则改写

需求:

        /chat3/v1/api  改写为  /v1/api

实现如下截图:

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在 Vue 2 中,keep-alive 可以通过路由来缓存路由。具体的做法是在路由配置中,将需要缓存的路由组件包裹在 <keep-alive> 标签中,并给 <keep-alive> 标签添加一个属性 include,值为一个数组,包含需要缓存的路由组件的名称。 例如,我们需要缓存 /home 和 /profile 两个路由组件,那么路由配置可以这样写: ```javascript import Home from './views/Home.vue' import Profile from './views/Profile.vue' export default new Router({ routes: [ { path: '/', name: 'home', component: Home, meta: { keepAlive: true // 标记需要缓存 } }, { path: '/profile', name: 'profile', component: Profile, meta: { keepAlive: true // 标记需要缓存 } } ] }) ``` 然后,在 App.vue 中,我们可以将 <router-view> 标签包裹在 <keep-alive> 标签中,并将 include 属性设置为需要缓存的路由组件名称的数组: ```html <template> <div id="app"> <keep-alive :include="cachedViews"> <router-view/> </keep-alive> </div> </template> <script> export default { name: 'App', computed: { cachedViews () { // 获取需要缓存的路由组件名称 return this.$store.state.cachedViews } } } </script> ``` 最后,在路由守卫中,我们可以通过 meta 字段来判断当前路由是否需要缓存,并将需要缓存的路由组件名称添加到缓存数组中: ```javascript router.beforeEach((to, from, next) => { if (to.meta.keepAlive) { store.commit('addCachedView', to.name) } else { store.commit('removeCachedView', to.name) } next() }) ``` 这样就可以通过路由路径缓存路由了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值