为了与后端服务器通信,我需要为后端服务器创建一个代理。我已经成功地设置了这些,但是现在我有两个地方需要在更改环境时更改变量。
我的版本:
7.0.67.1.0注意:我让代理正常工作(请参阅角文档中的设置),我只想改进设置。
Proxy.conf.js
这是我的当前(和工作!)config.js
const PROXY_CONFIG = {
"/api/*": {
"target": "https://url.to.somewhere/",
"logLevel": "debug",
"changeOrigin": true
}
};
module.exports = PROXY_CONFIG;我希望它能把这个文件和角environment.ts文件结合起来。
我想要什么
我想使用来自environment.ts文件的变量来配置代理,所以我只需要维护我的environment.ts,而不是两个文件(也是environment.ts文件)。
与此类似的东西:
import {env} from 'environments/environment';
const root = env.BASE_SUFFIX + '/*'; // BASE_SUFFIX = '/api'
function getConfig() {
const PROXY_CONFIG = {};
PROXY_CONFIG[root] = {
target: env.API_URL, // API_URL = https://url.to.somewhere/
logLevel: "debug",
changeOrigin: true,
};
return PROXY_CONFIG;
}
module.exports = getConfig();我目前遇到的问题是,environment.ts是一个类型记录文件,不能正确地包含在javascript中,因为我的environment.ts文件中有一些import {foo} from 'bar'。
因此,由于const env = require(environments/environment.ts).env导入了ES6,所以ES6无法工作。
对于我应该如何做这件事有什么建议吗?或者这是不可能的,我应该只使用两个单独的文件吗?
发布于 2022-01-29 19:31:37
我就是这样用它的。你可以试试这个
//创建proxy.conf.json
{
"/api/*": {
"target": "http://localhost:8000",
"secure": false,
"logLevel": "debug",
"changeOrigin": true
}
}//在package.json文件“脚本”下找到“开始”
"start": "ng serve --proxy-config proxy.conf.json",// api调用
this.http.post('/api/api_name/')https://stackoverflow.com/questions/53479209
复制相似问题