| 123456789101112131415161718192021222324252627282930313233343536373839404142 |
- const proxy = require('express-http-proxy')
- const use = true
- const base_url = process.env.VUE_APP_BASE_API
- const minioKey = process.env.VUE_APP_MINIO.replace(base_url, '')
- const thumbnailKey = process.env.VUE_APP_THUMBNAIL.replace(base_url, '')
- const gate = 'http://10.180.88.84:8093'
- module.exports = {
- register (router) {
- if (use) {
- router.use('/auth', createProxy(process.env.VUE_APP_KEYCLOAK_OPTIONS_URL))
- router.use(minioKey, createProxy(gate))
- router.use(thumbnailKey, createThumbnailProxy(gate))
- router.use('/', createProxy(gate, '/prod-api'))
- }
- }
- }
- function createProxy (to, replace = '') {
- return proxy(to, {
- parseReqBody: false,
- proxyReqPathResolver (req) {
- const url = replace === false ? req.url : `${req.baseUrl.replace(base_url, replace)}${req.url}`
- console.log(`proxy ${url} to ${to}`)
- return url
- }
- })
- }
- function createThumbnailProxy (to) {
- return proxy(to, {
- parseReqBody: false,
- proxyReqPathResolver (req) {
- const url = `${thumbnailKey}${req.url.replace(new RegExp(`http.*${minioKey}`), `${gate}${minioKey}`)}`
- console.log(`thumbnail ${url} to ${to}`)
- return url
- }
- })
- }
|