Angular 可配置的SSL用于角度+;SpringBoot项目

Angular 可配置的SSL用于角度+;SpringBoot项目,angular,spring-boot,ssl,Angular,Spring Boot,Ssl,我正在做一个有弹簧靴和角形9的项目。项目还使用弹性搜索来搜索一些请求。在这个项目中,SSL应用于所有REST请求以及弹性搜索 要在项目中应用SSL,前端和后端的更改都已完成。现在,我们想让SSL成为可配置的,就像任何标志一样,不管是否应用它 对于后端,我可以使用application.yml文件,方法是获取任何标志并读取它以应用SSL是否应用 但在前端文件中主要有:angular.json和package.json都有SSL的更改,但是如何访问application.yml标志的值来识别在前端应

我正在做一个有弹簧靴和角形9的项目。项目还使用弹性搜索来搜索一些请求。在这个项目中,SSL应用于所有REST请求以及弹性搜索

要在项目中应用SSL,前端和后端的更改都已完成。现在,我们想让SSL成为可配置的,就像任何标志一样,不管是否应用它

对于后端,我可以使用application.yml文件,方法是获取任何标志并读取它以应用SSL是否应用

但在前端文件中主要有:angular.json和package.json都有SSL的更改,但是如何访问application.yml标志的值来识别在前端应用SSL

angular.json

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "webapp": {
      "root": "",
      "sourceRoot": "src/main/webapp",
      "projectType": "application",
      "prefix": "app",
      "schematics": {},
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "src/main/webapp/dist",
            "baseHref": "/webapp/",
            "deployUrl": "/webapp/",
            "index": "src/main/webapp/index.html",
            "main": "src/main/webapp/main.ts",
            "polyfills": "src/main/webapp/polyfills.ts",
            "tsConfig": "tsconfig.app.json",
            "assets": [
              "src/main/webapp/favicon.ico",
              "src/main/webapp/assets",
              "src/main/webapp/robots.txt",
              "src/main/webapp/404.html",
              {
                "glob": "**/*",
                "input": "node_modules/ng2-pdfjs-viewer/pdfjs",
                "output": "/assets/pdfjs"
              }
            ],
            "styles": [
              "src/main/webapp/styles.scss"
            ],
            "scripts": [],
            "es5BrowserSupport": true
          },
          "configurations": {
            "production": {
              "fileReplacements": [
                {
                  "replace": "src/main/webapp/environments/environment.ts",
                  "with": "src/main/webapp/environments/environment.prod.ts"
                }
              ],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true,
              "budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "4mb",
                  "maximumError": "6mb"
                },
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "6kb"
                }
              ]
            }
          }
        },
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
              "browserTarget": "webapp:build",
              "ssl": true,
              "sslKey": "C://Workarea//ssl//server.key",
              "sslCert": "C://Workarea//ssl//server.crt"
          },
          "configurations": {
            "production": {
              "browserTarget": "webapp:build:production"
            }
          }
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "webapp:build"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/main/webapp/test.ts",
            "polyfills": "src/main/webapp/polyfills.ts",
            "tsConfig": "tsconfig.spec.json",
            "karmaConfig": "karma.conf.js",
            "styles": [
              "src/main/webapp/styles.scss"
            ],
            "scripts": [],
            "assets": [
              "src/main/webapp/favicon.ico",
              "src/main/webapp/assets",
              "src/main/webapp/robots.txt",
              "src/main/webapp/404.html",
              {
                "glob": "**/*",
                "input": "node_modules/ng2-pdfjs-viewer/pdfjs",
                "output": "/assets/pdfjs"
              }
            ]
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "tsconfig.app.json",
              "tsconfig.spec.json"
            ],
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    },
    "webapp-e2e": {
      "root": "",
      "projectType": "application",
      "prefix": "",
      "architect": {
        "e2e": {
          "builder": "@angular-devkit/build-angular:protractor",
          "options": {
            "protractorConfig": "protractor.conf.js",
            "devServerTarget": "webapp:serve"
          },
          "configurations": {
            "production": {
              "devServerTarget": "webapp:serve:production"
            }
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": "tsconfig.e2e.json",
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    }
  },
  "defaultProject": "webapp",
  "cli": {
    "analytics": "808c136f-eea0-4753-a321-b09e208a02c4"
  }
}
{
  "name": "regis-ri-tool",
  "version": "0.0.0",
  "description": "Description for Rule Interpretation Tool",
  "cacheDirectories": [
    "node_modules"
  ],
  "scripts": {
    "postinstall": "ngcc",
    "ng": "ng",
    "prestart": "node build-info.js",
    "start": "ng serve --port 8888 --ssl true --ssl-cert C:\\WorkArea\\ssl\\server.crt --ssl-key C:\\WorkArea\\ssl\\server.key --aot true --proxy-config proxy.conf.json",
    "prebuild": "node build-info.js",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "prebuild:prod": "node build-info.js",
    "build:prod": "ng build --prod --build-optimizer"
  },
  "private": true,
  "engines": {
    "node": ">=10.13.0"
  },
  "dependencies": {
    "@angular/animations": "~9.1.0",
    "@angular/cdk": "^9.1.0",
    "@angular/common": "~9.1.0",
    "@angular/compiler": "~9.1.0",
    "@angular/core": "~9.1.0",
    "@angular/flex-layout": "^9.0.0-beta.29",
    "@angular/forms": "~9.1.0",
    "@angular/material": "^9.1.0",
    "@angular/material-moment-adapter": "^9.1.0",
    "@angular/platform-browser": "~9.1.0",
    "@angular/platform-browser-dynamic": "~9.1.0",
    "@angular/router": "~9.1.0",
    "@ngx-translate/core": "^11.0.1",
    "@types/jquery": "^3.3.29",
    "classlist.js": "^1.1.20150312",
    "core-js": "^2.5.4",
    "fs-extra": "^8.1.0",
    "hammerjs": "^2.0.8",
    "jquery": "^3.4.1",
    "material-dynamic-table": "^9.4.0",
    "material-icons": "^0.3.1",
    "moment": "^2.24.0",
    "ng2-pdfjs-viewer": "^5.0.1",
    "ngx-cookie-service": "^3.0.3",
    "ngx-mat-select-search": "^2.1.2",
    "ngx-quill": "^5.1.0",
    "ngx-webstorage": "^5.0.0",
    "popper.js": "^1.15.0",
    "quill": "^1.3.7",
    "rxjs": "~6.5.4",
    "stream": "0.0.2",
    "timers": "^0.1.1",
    "tslib": "^1.10.0",
    "web-animations-js": "^2.3.2",
    "xml2js": "^0.4.19",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.7",
    "@angular/cli": "~9.1.0",
    "@angular/compiler-cli": "~9.1.0",
    "@angular/language-service": "~9.1.0",
    "@angular/platform-server": "^9.1.0",
    "@nguniversal/express-engine": "^9.0.2",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "^12.11.1",
    "codelyzer": "^5.1.2",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~3.1.1",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "ng-diff-match-patch": "^3.0.1",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.11.0",
    "typescript": "~3.7.5"
  }
}
{
  "/": {
    "target": "https://localhost:8443/",
    "secure": false,
    "logLevel": "debug"
  }
}
服务中定义了ssl、sslKey和sslCert

package.json

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "webapp": {
      "root": "",
      "sourceRoot": "src/main/webapp",
      "projectType": "application",
      "prefix": "app",
      "schematics": {},
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "src/main/webapp/dist",
            "baseHref": "/webapp/",
            "deployUrl": "/webapp/",
            "index": "src/main/webapp/index.html",
            "main": "src/main/webapp/main.ts",
            "polyfills": "src/main/webapp/polyfills.ts",
            "tsConfig": "tsconfig.app.json",
            "assets": [
              "src/main/webapp/favicon.ico",
              "src/main/webapp/assets",
              "src/main/webapp/robots.txt",
              "src/main/webapp/404.html",
              {
                "glob": "**/*",
                "input": "node_modules/ng2-pdfjs-viewer/pdfjs",
                "output": "/assets/pdfjs"
              }
            ],
            "styles": [
              "src/main/webapp/styles.scss"
            ],
            "scripts": [],
            "es5BrowserSupport": true
          },
          "configurations": {
            "production": {
              "fileReplacements": [
                {
                  "replace": "src/main/webapp/environments/environment.ts",
                  "with": "src/main/webapp/environments/environment.prod.ts"
                }
              ],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true,
              "budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "4mb",
                  "maximumError": "6mb"
                },
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "6kb"
                }
              ]
            }
          }
        },
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
              "browserTarget": "webapp:build",
              "ssl": true,
              "sslKey": "C://Workarea//ssl//server.key",
              "sslCert": "C://Workarea//ssl//server.crt"
          },
          "configurations": {
            "production": {
              "browserTarget": "webapp:build:production"
            }
          }
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "webapp:build"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/main/webapp/test.ts",
            "polyfills": "src/main/webapp/polyfills.ts",
            "tsConfig": "tsconfig.spec.json",
            "karmaConfig": "karma.conf.js",
            "styles": [
              "src/main/webapp/styles.scss"
            ],
            "scripts": [],
            "assets": [
              "src/main/webapp/favicon.ico",
              "src/main/webapp/assets",
              "src/main/webapp/robots.txt",
              "src/main/webapp/404.html",
              {
                "glob": "**/*",
                "input": "node_modules/ng2-pdfjs-viewer/pdfjs",
                "output": "/assets/pdfjs"
              }
            ]
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "tsconfig.app.json",
              "tsconfig.spec.json"
            ],
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    },
    "webapp-e2e": {
      "root": "",
      "projectType": "application",
      "prefix": "",
      "architect": {
        "e2e": {
          "builder": "@angular-devkit/build-angular:protractor",
          "options": {
            "protractorConfig": "protractor.conf.js",
            "devServerTarget": "webapp:serve"
          },
          "configurations": {
            "production": {
              "devServerTarget": "webapp:serve:production"
            }
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": "tsconfig.e2e.json",
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    }
  },
  "defaultProject": "webapp",
  "cli": {
    "analytics": "808c136f-eea0-4753-a321-b09e208a02c4"
  }
}
{
  "name": "regis-ri-tool",
  "version": "0.0.0",
  "description": "Description for Rule Interpretation Tool",
  "cacheDirectories": [
    "node_modules"
  ],
  "scripts": {
    "postinstall": "ngcc",
    "ng": "ng",
    "prestart": "node build-info.js",
    "start": "ng serve --port 8888 --ssl true --ssl-cert C:\\WorkArea\\ssl\\server.crt --ssl-key C:\\WorkArea\\ssl\\server.key --aot true --proxy-config proxy.conf.json",
    "prebuild": "node build-info.js",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "prebuild:prod": "node build-info.js",
    "build:prod": "ng build --prod --build-optimizer"
  },
  "private": true,
  "engines": {
    "node": ">=10.13.0"
  },
  "dependencies": {
    "@angular/animations": "~9.1.0",
    "@angular/cdk": "^9.1.0",
    "@angular/common": "~9.1.0",
    "@angular/compiler": "~9.1.0",
    "@angular/core": "~9.1.0",
    "@angular/flex-layout": "^9.0.0-beta.29",
    "@angular/forms": "~9.1.0",
    "@angular/material": "^9.1.0",
    "@angular/material-moment-adapter": "^9.1.0",
    "@angular/platform-browser": "~9.1.0",
    "@angular/platform-browser-dynamic": "~9.1.0",
    "@angular/router": "~9.1.0",
    "@ngx-translate/core": "^11.0.1",
    "@types/jquery": "^3.3.29",
    "classlist.js": "^1.1.20150312",
    "core-js": "^2.5.4",
    "fs-extra": "^8.1.0",
    "hammerjs": "^2.0.8",
    "jquery": "^3.4.1",
    "material-dynamic-table": "^9.4.0",
    "material-icons": "^0.3.1",
    "moment": "^2.24.0",
    "ng2-pdfjs-viewer": "^5.0.1",
    "ngx-cookie-service": "^3.0.3",
    "ngx-mat-select-search": "^2.1.2",
    "ngx-quill": "^5.1.0",
    "ngx-webstorage": "^5.0.0",
    "popper.js": "^1.15.0",
    "quill": "^1.3.7",
    "rxjs": "~6.5.4",
    "stream": "0.0.2",
    "timers": "^0.1.1",
    "tslib": "^1.10.0",
    "web-animations-js": "^2.3.2",
    "xml2js": "^0.4.19",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.7",
    "@angular/cli": "~9.1.0",
    "@angular/compiler-cli": "~9.1.0",
    "@angular/language-service": "~9.1.0",
    "@angular/platform-server": "^9.1.0",
    "@nguniversal/express-engine": "^9.0.2",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "^12.11.1",
    "codelyzer": "^5.1.2",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~3.1.1",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "ng-diff-match-patch": "^3.0.1",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.11.0",
    "typescript": "~3.7.5"
  }
}
{
  "/": {
    "target": "https://localhost:8443/",
    "secure": false,
    "logLevel": "debug"
  }
}
类似的start标记在package.json中有ssl命令

用于识别ssl的应用程序local.yml的一部分:

...............
............

server:
    port: 8443
    ssl:
        enabled: true
        key-store: classpath:keystore.p12
        key-store-password: passw0rd
        key-store-type: PKCS12
        key-alias: regisri
    servlet:
        context-path: /webapp

............
..............
还有一个文件要应用更改:

proxy.config.json

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "webapp": {
      "root": "",
      "sourceRoot": "src/main/webapp",
      "projectType": "application",
      "prefix": "app",
      "schematics": {},
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "src/main/webapp/dist",
            "baseHref": "/webapp/",
            "deployUrl": "/webapp/",
            "index": "src/main/webapp/index.html",
            "main": "src/main/webapp/main.ts",
            "polyfills": "src/main/webapp/polyfills.ts",
            "tsConfig": "tsconfig.app.json",
            "assets": [
              "src/main/webapp/favicon.ico",
              "src/main/webapp/assets",
              "src/main/webapp/robots.txt",
              "src/main/webapp/404.html",
              {
                "glob": "**/*",
                "input": "node_modules/ng2-pdfjs-viewer/pdfjs",
                "output": "/assets/pdfjs"
              }
            ],
            "styles": [
              "src/main/webapp/styles.scss"
            ],
            "scripts": [],
            "es5BrowserSupport": true
          },
          "configurations": {
            "production": {
              "fileReplacements": [
                {
                  "replace": "src/main/webapp/environments/environment.ts",
                  "with": "src/main/webapp/environments/environment.prod.ts"
                }
              ],
              "optimization": true,
              "outputHashing": "all",
              "sourceMap": false,
              "extractCss": true,
              "namedChunks": false,
              "aot": true,
              "extractLicenses": true,
              "vendorChunk": false,
              "buildOptimizer": true,
              "budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "4mb",
                  "maximumError": "6mb"
                },
                {
                  "type": "anyComponentStyle",
                  "maximumWarning": "6kb"
                }
              ]
            }
          }
        },
        "serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
              "browserTarget": "webapp:build",
              "ssl": true,
              "sslKey": "C://Workarea//ssl//server.key",
              "sslCert": "C://Workarea//ssl//server.crt"
          },
          "configurations": {
            "production": {
              "browserTarget": "webapp:build:production"
            }
          }
        },
        "extract-i18n": {
          "builder": "@angular-devkit/build-angular:extract-i18n",
          "options": {
            "browserTarget": "webapp:build"
          }
        },
        "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/main/webapp/test.ts",
            "polyfills": "src/main/webapp/polyfills.ts",
            "tsConfig": "tsconfig.spec.json",
            "karmaConfig": "karma.conf.js",
            "styles": [
              "src/main/webapp/styles.scss"
            ],
            "scripts": [],
            "assets": [
              "src/main/webapp/favicon.ico",
              "src/main/webapp/assets",
              "src/main/webapp/robots.txt",
              "src/main/webapp/404.html",
              {
                "glob": "**/*",
                "input": "node_modules/ng2-pdfjs-viewer/pdfjs",
                "output": "/assets/pdfjs"
              }
            ]
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": [
              "tsconfig.app.json",
              "tsconfig.spec.json"
            ],
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    },
    "webapp-e2e": {
      "root": "",
      "projectType": "application",
      "prefix": "",
      "architect": {
        "e2e": {
          "builder": "@angular-devkit/build-angular:protractor",
          "options": {
            "protractorConfig": "protractor.conf.js",
            "devServerTarget": "webapp:serve"
          },
          "configurations": {
            "production": {
              "devServerTarget": "webapp:serve:production"
            }
          }
        },
        "lint": {
          "builder": "@angular-devkit/build-angular:tslint",
          "options": {
            "tsConfig": "tsconfig.e2e.json",
            "exclude": [
              "**/node_modules/**"
            ]
          }
        }
      }
    }
  },
  "defaultProject": "webapp",
  "cli": {
    "analytics": "808c136f-eea0-4753-a321-b09e208a02c4"
  }
}
{
  "name": "regis-ri-tool",
  "version": "0.0.0",
  "description": "Description for Rule Interpretation Tool",
  "cacheDirectories": [
    "node_modules"
  ],
  "scripts": {
    "postinstall": "ngcc",
    "ng": "ng",
    "prestart": "node build-info.js",
    "start": "ng serve --port 8888 --ssl true --ssl-cert C:\\WorkArea\\ssl\\server.crt --ssl-key C:\\WorkArea\\ssl\\server.key --aot true --proxy-config proxy.conf.json",
    "prebuild": "node build-info.js",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e",
    "prebuild:prod": "node build-info.js",
    "build:prod": "ng build --prod --build-optimizer"
  },
  "private": true,
  "engines": {
    "node": ">=10.13.0"
  },
  "dependencies": {
    "@angular/animations": "~9.1.0",
    "@angular/cdk": "^9.1.0",
    "@angular/common": "~9.1.0",
    "@angular/compiler": "~9.1.0",
    "@angular/core": "~9.1.0",
    "@angular/flex-layout": "^9.0.0-beta.29",
    "@angular/forms": "~9.1.0",
    "@angular/material": "^9.1.0",
    "@angular/material-moment-adapter": "^9.1.0",
    "@angular/platform-browser": "~9.1.0",
    "@angular/platform-browser-dynamic": "~9.1.0",
    "@angular/router": "~9.1.0",
    "@ngx-translate/core": "^11.0.1",
    "@types/jquery": "^3.3.29",
    "classlist.js": "^1.1.20150312",
    "core-js": "^2.5.4",
    "fs-extra": "^8.1.0",
    "hammerjs": "^2.0.8",
    "jquery": "^3.4.1",
    "material-dynamic-table": "^9.4.0",
    "material-icons": "^0.3.1",
    "moment": "^2.24.0",
    "ng2-pdfjs-viewer": "^5.0.1",
    "ngx-cookie-service": "^3.0.3",
    "ngx-mat-select-search": "^2.1.2",
    "ngx-quill": "^5.1.0",
    "ngx-webstorage": "^5.0.0",
    "popper.js": "^1.15.0",
    "quill": "^1.3.7",
    "rxjs": "~6.5.4",
    "stream": "0.0.2",
    "timers": "^0.1.1",
    "tslib": "^1.10.0",
    "web-animations-js": "^2.3.2",
    "xml2js": "^0.4.19",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.7",
    "@angular/cli": "~9.1.0",
    "@angular/compiler-cli": "~9.1.0",
    "@angular/language-service": "~9.1.0",
    "@angular/platform-server": "^9.1.0",
    "@nguniversal/express-engine": "^9.0.2",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "^12.11.1",
    "codelyzer": "^5.1.2",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~3.1.1",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "ng-diff-match-patch": "^3.0.1",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.11.0",
    "typescript": "~3.7.5"
  }
}
{
  "/": {
    "target": "https://localhost:8443/",
    "secure": false,
    "logLevel": "debug"
  }
}
启用了server.ssl.enabled后,我可以在后端工作,但无法在前端package.json、proxy.config.json和angular.json文件中获得此功能


我希望可配置以识别这两个文件中的ssl更改,我们构建war文件,以便我们需要可配置的前端和后端。

如果我理解正确,您的angular正在调用多个后端。。。您想知道是否应该使用不同的ssl。如果这是正确的,我将有一个是您ui知道的主要类,用于查找后端上配置的其他类的调用。@Tim.Burnell backend是唯一的一个,许多类都有更改。我需要一种方法来确定应用程序是否应该使用ssl从前端和后端运行。如果说确定您是否正在运行ssl与是否需要运行ssl,这不是更好的说法吗?因为您可以检查url并确定它是否已经在运行ssl。我可以在运行项目后进行检查,我需要在它之前进行检查,因为url将在为项目创建构建时生成。我需要在创建生成之前进行检查。如果为每个环境重建。。。您可以使用环境文件:但是我倾向于不可变。。。所以所有环境都使用相同的构建。如果我理解正确,您的angular正在调用多个后端。。。您想知道是否应该使用不同的ssl。如果这是正确的,我将有一个是您ui知道的主要类,用于查找后端上配置的其他类的调用。@Tim.Burnell backend是唯一的一个,许多类都有更改。我需要一种方法来确定应用程序是否应该使用ssl从前端和后端运行。如果说确定您是否正在运行ssl与是否需要运行ssl,这不是更好的说法吗?因为您可以检查url并确定它是否已经在运行ssl。我可以在运行项目后进行检查,我需要在它之前进行检查,因为url将在为项目创建构建时生成。我需要在创建生成之前进行检查。如果为每个环境重建。。。您可以使用环境文件:但是我倾向于不可变。。。因此,所有环境都使用相同的构建。