CLI do Ember com vários proxies

O problema:

Eu tenho um aplicativo Ember CLI que consumirá várias APIs, das quais preciso fazer proxy no modo de desenvolvimento.

Fundo:

Eu tenho uma API herdada que expõe serviços em/api rodando na minha máquina de desenvolvimento local emlocalhost:3000

Eu tenho uma nova API que expõe serviços em/myapp/api/v1. Esses serviços foram extraídos recentemente do aplicativo herdado e incluem a maioria dos serviços de aplicativos usados pelo aplicativo brasa.

O aplicativo brasa usa a baseURL de/myapp, como está sendo implantado em um subdiretório.

Eu gerei dois http-proxys usandoember generate http-proxy. Eles estão localizados em/server/proxies/api.js eserver/proxies/myapp/api/v1.js

api.js

var proxyPath = '/api';
module.exports = function(app) {
  var proxy = require('http-proxy').createProxyServer({});
  proxy.on('error', function(err, req) {
    console.error(err, req.url);
  });
  app.use(proxyPath, function(req, res, next){
    // include root path in proxied request
    req.url = proxyPath + '/' + req.url;
    proxy.web(req, res, { target: 'http://localhost:3000' });
  });
};

myapp / api / v1.js

var proxyPath = 'myapp/api/v1';
module.exports = function(app) {
  var proxy = require('http-proxy').createProxyServer({});
  proxy.on('error', function(err, req) {
    console.error(err, req.url);
  });
  app.use(proxyPath, function(req, res, next){
    req.url = proxyPath + '/' + req.url;
    proxy.web(req, res, { target: 'http://localhost:4100' });
  });
};

O primeiro proxy, para / api, parece estar funcionando, a segunda API, para / myapp / api / v1 / o que quer que falhe.

Não parece ser usado ou considerado. Quando corro, por exemplo, um POST para myapp / api / v1 / sessions, ele simplesmente diz que não pode POST. Quando coloco o depurador nas funções proxy.on e app.use, elas nunca são atingidas.

Onde estou errado aqui?

questionAnswers(1)

yourAnswerToTheQuestion