У меня есть существующее приложение Node и Express API, которое я пытаюсь развернуть в Azure WebApps. Развертывание идет нормально. Но когда я пытаюсь получить доступ к API, ничего не происходит. Когда я проверяю журнал, я вижу следующее: «Контейнер chdemoapi_0_f2df43a c не ответил на HTTP-запросы на порт: 8080, не удалось запустить сайт» «Контейнер chdemoapi_0_4e583132 не ответил на HTTP-запросы на порт: 8080, не удалось запустить сайт» Так выглядит мой файл index. js:
const config = require('./common/config/env.config.js');
const express = require('express');
const app = express();
const bodyParser = require('body-parser');
const AuthorizationRouter = require('./auth/routes.config');
const LeadsRouter = require('./leads/routes.config');
const DemoRouter = require('./demo/routes.config');
const MentorRouter = require('./mentors/routes.config');
app.use(function (req, res, next) {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Credentials', 'true');
res.header('Access-Control-Allow-Methods', 'GET,HEAD,PUT,PATCH,POST,DELETE');
res.header('Access-Control-Expose-Headers', 'Content-Length');
res.header('Access-Control-Allow-Headers', 'Accept, Authorization, Content-Type, X-Requested-With, Range, x-access-token');
if (req.method === 'OPTIONS') {
return res.send(200);
} else {
return next();
}
});
app.use(bodyParser.json());
AuthorizationRouter.routesConfig(app);
LeadsRouter.routesConfig(app);
DemoRouter.routesConfig(app);
MentorRouter.routesConfig(app);
app.listen(config.port, function () {
console.log('app listening at port %s', config.port);
});
Так выглядит мой файл env.config:
module.exports = { "port": 3600,
//"appEndpoint": "http://localhost:3600",
//"apiEndpoint": "http://localhost:3600",
"appEndpoint": "https://chdemoapi.azurewebsites.net:3600",
"apiEndpoint": "https://chdemoapi.azurewebsites.net:3600",
"jwt_expiration_in_seconds": 36000,
"environment": "dev",
};
Так выглядит мой файл package. json выглядит:
{"name": "ch-demo-services",
"version": "1.0.0",
"description": "microservices for demo module",
"main": "index.js",
"start":"node index.js",
"scripts": {"test":
"echo \"Error: no test specified\" && exit 1"},
"author": "", "license": "ISC",
"dependencies": { "express": "^4.17.1", "generate-password": "^1.5.1",
"jsonwebtoken": "^8.5.1", "mailgen": "^2.0.13", "moment": "^2.27.0", "mongoose":
"^5.9.18", "nodemailer": "^6.4.10", "uuid": "^8.1.0" } }
В настройках приложения я также добавил WEBSITES_PORT: 3600. На моем локальном хосте я обращался к API, например: http://localhost: 3600 / listDemoSlots После развертывания на Azure я пытаюсь получить к ним доступ, например: https://chdemoapi.azurewebsites.net: 3600 / listDemoSlots . Но ничего не происходит, и я вижу выше журналы. Что не так с моими настройками.