我需要将我的api-url而不是硬编码存储在我的angularproject中。 以下情况我尝试构建: 用ng --build构建我的角度应用程序后,我会将dist文件夹提供给我的客户。 Angular应用程序是客户必须在其服务器上托管的软件包的一部分。另一部分是.net核心api。
我的问题是每个客户的api-url可能不同。所以我需要一种简单的方法来更改dist文件夹中的此url。类似于api-config.js文件。
什么是最好的服务方式?
答案 0 :(得分:0)
您可以使用enviroment.ts文件 因此,您可以创建多个enviroment.prod.ts或enviroment.stagging.ts或enviroment.qa.ts
对于v6 +,现在称为angular.json环境。以下是在v6之后添加新的质量检查环境的方法:
"configurations": {
"production": { ... },
"qa": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.qa.ts"
}
]
}
}
例如,让我们添加一个服务器URL:
export const environment = {
production: false,
serverUrl: "your server url"
};
然后您要做的就是为每个环境提供不同的URL
喜欢
import {environment} from '../../environments/environment';
export class AuthService {
apiUrl: environment.serverUrl
}
然后运行
ng build --configuration=qa
答案 1 :(得分:0)
您可以使用在UI中键入的API网址以超级管理员的身份发出第一个请求,并且由于您是超级管理员并且您正在设置项目,因此您无需先登录。您的第一个设置(添加API-Url)将保存在数据库中,然后,您可以检查是否存在API-Url,因此跳过设置部分并将其重定向到登录页面。