mirror of
https://github.com/ets-cfuhrman-pfe/EvalueTonSavoir.git
synced 2025-08-11 21:23:54 -04:00
Don't make an HTTPS server, but configure sockets.io to use secure sockets
This commit is contained in:
parent
0a8f8580f4
commit
e4aa91863c
2 changed files with 14 additions and 18 deletions
|
|
@ -246,7 +246,7 @@ class ApiService {
|
||||||
const result: AxiosResponse = await axios.post(url, body, { headers: headers });
|
const result: AxiosResponse = await axios.post(url, body, { headers: headers });
|
||||||
|
|
||||||
if (result.status !== 200) {
|
if (result.status !== 200) {
|
||||||
throw new Error(`La supression du compte a échoué. Status: ${result.status}`);
|
throw new Error(`La suppression du compte a échoué. Status: ${result.status}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
@ -328,7 +328,8 @@ class ApiService {
|
||||||
if (axios.isAxiosError(error)) {
|
if (axios.isAxiosError(error)) {
|
||||||
const err = error as AxiosError;
|
const err = error as AxiosError;
|
||||||
const data = err.response?.data as { error: string } | undefined;
|
const data = err.response?.data as { error: string } | undefined;
|
||||||
return data?.error || 'Erreur serveur inconnue lors de la requête.';
|
const url = err.config?.url || 'URL inconnue';
|
||||||
|
return data?.error || `Erreur serveur inconnue lors de la requête (${url}).`;
|
||||||
}
|
}
|
||||||
|
|
||||||
return `Une erreur inattendue s'est produite.`
|
return `Une erreur inattendue s'est produite.`
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
// Import API
|
// Import API
|
||||||
const express = require("express");
|
const express = require("express");
|
||||||
const http = require("http");
|
const http = require("http");
|
||||||
const https = require("https");
|
const dotenv = require('dotenv');
|
||||||
const dotenv = require('dotenv')
|
|
||||||
|
|
||||||
// Import Sockets
|
// Import Sockets
|
||||||
const { setupWebsocket } = require("./socket/socket");
|
const { setupWebsocket } = require("./socket/socket");
|
||||||
|
|
@ -40,7 +39,7 @@ module.exports.images = imagesControllerInstance;
|
||||||
const userRouter = require('./routers/users.js');
|
const userRouter = require('./routers/users.js');
|
||||||
const folderRouter = require('./routers/folders.js');
|
const folderRouter = require('./routers/folders.js');
|
||||||
const quizRouter = require('./routers/quiz.js');
|
const quizRouter = require('./routers/quiz.js');
|
||||||
const imagesRouter = require('./routers/images.js')
|
const imagesRouter = require('./routers/images.js');
|
||||||
|
|
||||||
// Setup environment
|
// Setup environment
|
||||||
dotenv.config();
|
dotenv.config();
|
||||||
|
|
@ -51,7 +50,7 @@ const app = express();
|
||||||
const cors = require("cors");
|
const cors = require("cors");
|
||||||
const bodyParser = require('body-parser');
|
const bodyParser = require('body-parser');
|
||||||
|
|
||||||
const configureServer = (httpServer) => {
|
const configureServer = (httpServer, isDev) => {
|
||||||
return new Server(httpServer, {
|
return new Server(httpServer, {
|
||||||
path: "/socket.io",
|
path: "/socket.io",
|
||||||
cors: {
|
cors: {
|
||||||
|
|
@ -59,18 +58,16 @@ const configureServer = (httpServer) => {
|
||||||
methods: ["GET", "POST"],
|
methods: ["GET", "POST"],
|
||||||
credentials: true,
|
credentials: true,
|
||||||
},
|
},
|
||||||
|
secure: !isDev, // true for https, false for http
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
// Start sockets (depending on the dev or prod environment)
|
// Start sockets (depending on the dev or prod environment)
|
||||||
let server;
|
let server = http.createServer(app);
|
||||||
if (process.env.NODE_ENV === 'development') {
|
let isDev = process.env.NODE_ENV === 'development';
|
||||||
console.log('Démarrage en mode dev');
|
|
||||||
server = http.createServer(app);
|
console.log(`Environnement: ${process.env.NODE_ENV} (${isDev ? 'dev' : 'prod'})`);
|
||||||
} else {
|
|
||||||
console.log('Démarrage en mode prod');
|
|
||||||
server = https.createServer(app);
|
|
||||||
}
|
|
||||||
const io = configureServer(server);
|
const io = configureServer(server);
|
||||||
|
|
||||||
setupWebsocket(io);
|
setupWebsocket(io);
|
||||||
|
|
@ -84,22 +81,20 @@ app.use('/api/folder', folderRouter);
|
||||||
app.use('/api/quiz', quizRouter);
|
app.use('/api/quiz', quizRouter);
|
||||||
app.use('/api/image', imagesRouter);
|
app.use('/api/image', imagesRouter);
|
||||||
|
|
||||||
app.use(errorHandler)
|
app.use(errorHandler);
|
||||||
|
|
||||||
// Start server
|
// Start server
|
||||||
async function start() {
|
async function start() {
|
||||||
|
|
||||||
const port = process.env.PORT || 4400;
|
const port = process.env.PORT || 4400;
|
||||||
|
|
||||||
// Check DB connection
|
// Check DB connection
|
||||||
await db.connect()
|
await db.connect();
|
||||||
db.getConnection();
|
db.getConnection();
|
||||||
console.log(`Connexion MongoDB établie`);
|
console.log(`Connexion MongoDB établie`);
|
||||||
|
|
||||||
server.listen(port, () => {
|
server.listen(port, () => {
|
||||||
console.log(`Serveur écoutant sur le port ${port}`);
|
console.log(`Serveur écoutant sur le port ${port}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
start();
|
start();
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue