Adding session

This commit is contained in:
AMAICDAX 2025-09-03 11:46:09 +02:00
parent 5c5f1d06ae
commit 565b7e547c
3 changed files with 34 additions and 5 deletions

6
app.js
View file

@ -1,5 +1,6 @@
const express = require("express");
const bodyParser = require("body-parser");
const session = require("express-session");
const apiRoutes = require("./routes/api.routes");
const frontRoutes = require("./routes/front.routes");
@ -9,6 +10,11 @@ const PORT = process.env.PORT || 4200;
// Middleware
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(session({
secret: "your_secret_key", // change ce secret !
resave: false,
saveUninitialized: true,
}));
// Routes
app.use("/api", apiRoutes);

View file

@ -37,10 +37,32 @@ const handleCallback = async (req, res) => {
})
);
accessToken = tokenResponse.data.access_token;
res.send(
"Authentication successful! You can now retrieve your profile information."
);
const accessToken = tokenResponse.data.access_token;
// Récupère les infos utilisateur
const profileResponse = await axios.get("https://api.linkedin.com/v2/me", {
headers: {
Authorization: `Bearer ${accessToken}`,
},
});
const emailResponse = await axios.get("https://api.linkedin.com/v2/emailAddress?q=members&projection=(elements*(handle~))", {
headers: {
Authorization: `Bearer ${accessToken}`,
},
});
// Stocke dans la session
req.session.user = {
accessToken,
nom: profileResponse.data.localizedFirstName + " " + profileResponse.data.localizedLastName,
img: profileResponse.data.profilePicture
? profileResponse.data.profilePicture["displayImage~"].elements[0].identifiers[0].identifier
: null,
email: emailResponse.data.elements[0]["handle~"].emailAddress,
};
res.send("Authentication successful! User session created.");
} catch (error) {
console.error(
"LinkedIn token error:",

View file

@ -9,7 +9,8 @@
"dependencies": {
"express": "^4.17.1",
"axios": "^0.21.1",
"dotenv": "^8.2.0"
"dotenv": "^8.2.0",
"express-session": "^1.17.1"
},
"author": "ExostFlash",
"license": "ISC",