Adding session
This commit is contained in:
parent
5c5f1d06ae
commit
565b7e547c
3 changed files with 34 additions and 5 deletions
6
app.js
6
app.js
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -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:",
|
||||
|
|
|
|||
|
|
@ -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",
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue