我试图在我的Angular 4应用程序上运行e2e测试,该应用程序点击我的ExpressJS后端API。默认情况下,在端口4200上运行ng serve
我的应用程序。然后单独运行nodemon server.js
在端口3000上启动我的ExpressJS服务器。我可以使用。使用app.use(cors({ origin: 'http://localhost:4200', credentials: true }));
我可以从我的Angular应用程序中点击我的API就好了。但是,当我尝试运行ng e2e
时,应用程序不再在端口4200上运行,而是在49155上运行。因此,不仅我的API会阻止跨越原始请求,而且测试达到了终点http://localhost:49155/api/endpoint
而不是代理人到http://localhost/3000/api/endpoint
。
我知道我可以运行ng serve --proxy-config proxy.conf.json
看起来像
{
"/api": {
"target": "http://localhost:3000",
"secure": false
}
}
但是有什么方法可以用我的ng e2e
测试做到这一点吗?有没有办法允许多个角色使用cors()
?