У меня есть внешний интерфейс (Angular 7, ngx-admin) и внутренний интерфейс (nodeJS, express).
Проблема : angular использует https и взаимодействует с бэкэндом через http.Это вызвало эту проблему:
Mixed Content: The page at 'https://xyz' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://0.0.0.0:56231/api/MyAPI'. This request has been blocked; the content must be served over HTTPS.
Итак, я сделал бэкэнд, поддерживающий https.Нечто (очень) похожее на это:
const app = express();
var https = require('https')
// ...
https.createServer({
}, app)
.listen(56231, function () {
console.log('Backend running on port: 56231');
})
и затем изменение углового кода (вызывающего бэкэнд) с HTTP на HTTPS.
return this.http.post('https://0.0.0.0:56231/api/MyAPI', form)
.map(res => res.json())
.catch(this.error);
}
Понятно, что я пропускаю некоторые шаги ... какой-нибудь свет?