eggjs每次接收到浏览器的请求,又要通过内置的HttpClient进行接口转发到实际的java后端,请问如何设置成像nginx一样方便
支持 use(path, middleware)的router + koa2-connect + http-proxy-middleware
@magicdawn 大佬,能否详细说说
在eggjs里面写原生node也行。原生node转发端口的话,可以参考这个 http://blog.star7th.com/2019/06/2356.html
@wushanchao
koa 的, egg.js 里能拿到 app 的话也是一样
const connect = require('koa2-connect') const proxy = require('http-proxy-middleware') const mount = require('koa-mount') // location /some/path { // proxy_pass http://localhost:1337; // } app.use(mount('/some/path', connect(proxy({target: 'http://localhost:1337/some/path'})))) // location /some/path { // proxy_pass http://localhost:1337/api; // } app.use(mount('/some/path', connect(proxy({target: 'http://localhost:1337/api'}))))
最后使用了插件egg-proxy实现批量转发。 参考配置如下:
exports.proxy = [{ host: 'http://xxx.xxx.xxx.xxx', match: /xxx\/upload/, map(path) { const finalPath = path.replace('/xxx/','/v1/api/') return finalPath; } }];
http-proxy-middleware
可以看下 egg-http-proxy-middleware
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
支持 use(path, middleware)的router + koa2-connect + http-proxy-middleware
@magicdawn 大佬,能否详细说说
在eggjs里面写原生node也行。原生node转发端口的话,可以参考这个 http://blog.star7th.com/2019/06/2356.html
@wushanchao
koa 的, egg.js 里能拿到 app 的话也是一样
最后使用了插件egg-proxy实现批量转发。 参考配置如下:
http-proxy-middleware
可以看下 egg-http-proxy-middleware