Как управлять сертификатами API (HTTPS) в DEV против PROD в express в среде узла / angular, развернутой в Windows IIS? Я видел упоминания о переписываниях прокси, но я не уверен, как они управляются на express стороне.
Я знаю в PROD, IIS и перезаписи в web.config помогают управлять сертификатом для внешнего интерфейса, но большинство уроков, которые я вижу для https на express, требуют жесткого кодирования самозаверяющего сертификата и включения его в сборку. В PROD у меня есть официальный подписанный сертификат на сервере, который я буду использовать на порту 8443, и не уверен, как это изменит код, см. Ниже:
const express = require('express')
const app = express()
const https = require('https')
const fs = require('fs')
const port = process.env.PORT || 8443;
app.get('/', (req, res) => {
res.send("IT'S WORKING!")
})
const httpsOptions = {
key: fs.readFileSync('./security/cert.key'),
cert: fs.readFileSync('./security/cert.pem')
}
const server = https.createServer(httpsOptions, app)
.listen(port, () => {
console.log('server running at ' + port)
})
В отдельном, но связанном примечании, как работает мой API в Angular изменить, чтобы вызвать внутренний API для Dev против PROD. Я думаю, что-то вроде этого, что IIS будет перенаправить в домен PROD?
private API_URL: string = 'https://localhost:8443/api/';