Мой express сервер работает на порту 3001.
В РЕАКТИВНОМ ФАЙЛЕ
На моей странице входа в систему.
fetch('http://localhost:3001/api/login',{
method:'POST',
headers: {
Accept: 'application/json',
"Content-Type": "application/json",
},
body:JSON.stringify(this.state),
credentials: 'same-origin',
mode:'cors'
}).then((respo)=>{
console.log(respo);
})
на домашней странице
fetch('http://localhost:3001/api/home',{credentials:'same-origin'}).then((response)=>{
return response.json();
}).then((response)=>{
this.setState({
isLoading:false,
userData:response.user,
posts:response.posts
})
})
когда я установил своего повара ie на странице входа в систему, из инструментов разработчика я мог видеть, что мой повар ie настраивается. Но я не получаю set-Cook ie на домашней странице. Где я иду не так здесь?
РЕДАКТИРОВАТЬ: настройка повара ie (на стороне сервера)
const express = require('express');
const mongoose = require('mongoose');
const cors = require('cors');
const bodyParser = require('body-parser');
const sessions = require('client-sessions');
const Post = require('./model/post');
const User = require('./model/user');
mongoose.connect('mongodb://localhost/social_network',{
useNewUrlParser:true,
useCreateIndex:true
});
const app = express();
app.use(cors({
origin:"http://127.0.0.1:3000"
}));
app.use(bodyParser.json())
app.use(
bodyParser.urlencoded({
extended: true
})
);
app.use(sessions({
cookieName:'users',
secret:'ouououou',
duration: 24*60*60*60
}))
const auth= async(req,res,next)=>{
try{
console.log(req.users.user);
const user = await User.findOne({email:req.users.email,password:req.users.password});
if(!user){
throw new Error("No User Found");
}else{
next();
}
}catch(e){
console.log(e);
res.status(404).send({error:e});
}
}
app.post("/api/login",async (req,res)=>{
try{
console.log(req.body.email);
const user = await
User.findOne({email:req.body.email,password:req.body.password});
if(!user){
throw new Error("User Not Found");
}else{
req.users.user = user;
console.log(req.users.user);
res.status(200).send(req.user);
}
}catch(e){
console.log(e);
res.status(404).send({error:e})
}
})
app.get('/api/home',auth,async (req,res)=>{
console.log("yo");
await req.user.populate('post').execPopulate();
const data={user:user,post:user.post}
res.send(data)
});
app.listen("3001",()=>{
console.log("on");
});