鍍金池/ 問答/Linux  HTML/ Next.js如何設置反向代理

Next.js如何設置反向代理

1.嘗試用server.js 中增加http-proxy-middleware,但是不起作用

const express = require('express')
const next = require('next')
const proxyMiddleware = require('http-proxy-middleware')

const port = parseInt(process.env.PORT, 10) || 3000
const dev = process.env.NODE_ENV !== 'production'
const app = next({ dir: '.', dev })
const handle = app.getRequestHandler()

app.prepare()
.then(() => {
  const server = express()

  server.get('/', (req, res) => {
    return app.render(req, res, '/')
  })

  server.get('*', (req, res) => {
    return handle(req, res)
  })

  const proxyTable = {
    '/api': {
            target: 'https://xx.xxx.com/',
            secure: false,
            pathRewrite: {'^/api' : ''},
            changeOrigin: true
        }
  }

  // proxy api requests
  Object.keys(proxyTable).forEach(function (context) {
    var options = proxyTable[context]
    if (typeof options === 'string') {
      options = { target: options }
    }
    server.use(proxyMiddleware(context, options))
  })

  server.listen(port, (err) => {
    if (err) throw err
    console.log(`> Ready on http://localhost:${port}`)
  })
})
.catch((ex) => {
  console.error(ex.stack)
  process.exit(1)
})
回答
編輯回答
未命名

先用npm安裝proxy,下面是我的配置
clipboard.png

2018年1月20日 13:09
編輯回答
不討喜

找到了demo。。。
https://github.com/zeit/next....

2018年6月5日 16:03