Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 会话存储在mongoDB存储中,但在生产期间不存储在浏览器中[已解决] 概述 我编写了一个与Express API接口的react应用程序 我结合express sessions实现了oauth2以获得授权 部署到Netlify的客户端- 以下是回购协议: 服务器端到Heroku- 以下是回购协议: 当前的cors设置 //cloudinary require(“dotenv”).config(); cloudinary.config({ 云名称:“loghorizon”, api_键:process.env.CLOUDINARY_api_键, api_secret:process.env.CLOUDINARY_secret, }); 要求(“./配置/护照”)(护照); //蒙哥达 connectDB(); //----------------------------------服务器---------------------------------- 常量app=Express(); const httpServer=http.createServer(app); 常量io=套接字(httpServer{ cors:{ 来源:process.env.CLIENT\u SIDE\u URL, 方法:[“获取”、“发布”], AllowedHeader:[“我的自定义头”], 证书:正确, }, }); 应用程序使用( 科尔斯({ origin:process.env.CLIENT\u SIDE\u URL,//允许服务器接受来自不同来源的请求 方法:“获取、头部、放置、修补、发布、删除”, 凭据:true,//允许来自浏览器的会话cookie通过 }) ); //----------------------------------中间件---------------------------------- //增加带宽以允许使用base64字符串 use(Express.json({limit:40mb,extended:true})); app.use(Express.urlencoded({limit:“40mb”,extended:true})); 应用程序集(“信任代理”,1); 应用程序使用( 会议({ 名称:“LHsession”, 机密:process.env.COOKIE\u secret, 雷萨夫:是的, 存储区:新MongoStore({mongooseConnection:mongoose.connection}), 曲奇:{ sameSite:错, 最大值:8.64e7, 安全:错误, httpOnly:false, }, }) ); //用于监视请求的实用程序 应用程序使用(摩根(“开发”)); //----------------------------------Pasport配置---------------------------------- app.use(passport.initialize()); app.use(passport.session()); 问题_Node.js_Express_Heroku_Cors_Express Session - Fatal编程技术网

Node.js 会话存储在mongoDB存储中,但在生产期间不存储在浏览器中[已解决] 概述 我编写了一个与Express API接口的react应用程序 我结合express sessions实现了oauth2以获得授权 部署到Netlify的客户端- 以下是回购协议: 服务器端到Heroku- 以下是回购协议: 当前的cors设置 //cloudinary require(“dotenv”).config(); cloudinary.config({ 云名称:“loghorizon”, api_键:process.env.CLOUDINARY_api_键, api_secret:process.env.CLOUDINARY_secret, }); 要求(“./配置/护照”)(护照); //蒙哥达 connectDB(); //----------------------------------服务器---------------------------------- 常量app=Express(); const httpServer=http.createServer(app); 常量io=套接字(httpServer{ cors:{ 来源:process.env.CLIENT\u SIDE\u URL, 方法:[“获取”、“发布”], AllowedHeader:[“我的自定义头”], 证书:正确, }, }); 应用程序使用( 科尔斯({ origin:process.env.CLIENT\u SIDE\u URL,//允许服务器接受来自不同来源的请求 方法:“获取、头部、放置、修补、发布、删除”, 凭据:true,//允许来自浏览器的会话cookie通过 }) ); //----------------------------------中间件---------------------------------- //增加带宽以允许使用base64字符串 use(Express.json({limit:40mb,extended:true})); app.use(Express.urlencoded({limit:“40mb”,extended:true})); 应用程序集(“信任代理”,1); 应用程序使用( 会议({ 名称:“LHsession”, 机密:process.env.COOKIE\u secret, 雷萨夫:是的, 存储区:新MongoStore({mongooseConnection:mongoose.connection}), 曲奇:{ sameSite:错, 最大值:8.64e7, 安全:错误, httpOnly:false, }, }) ); //用于监视请求的实用程序 应用程序使用(摩根(“开发”)); //----------------------------------Pasport配置---------------------------------- app.use(passport.initialize()); app.use(passport.session()); 问题

Node.js 会话存储在mongoDB存储中,但在生产期间不存储在浏览器中[已解决] 概述 我编写了一个与Express API接口的react应用程序 我结合express sessions实现了oauth2以获得授权 部署到Netlify的客户端- 以下是回购协议: 服务器端到Heroku- 以下是回购协议: 当前的cors设置 //cloudinary require(“dotenv”).config(); cloudinary.config({ 云名称:“loghorizon”, api_键:process.env.CLOUDINARY_api_键, api_secret:process.env.CLOUDINARY_secret, }); 要求(“./配置/护照”)(护照); //蒙哥达 connectDB(); //----------------------------------服务器---------------------------------- 常量app=Express(); const httpServer=http.createServer(app); 常量io=套接字(httpServer{ cors:{ 来源:process.env.CLIENT\u SIDE\u URL, 方法:[“获取”、“发布”], AllowedHeader:[“我的自定义头”], 证书:正确, }, }); 应用程序使用( 科尔斯({ origin:process.env.CLIENT\u SIDE\u URL,//允许服务器接受来自不同来源的请求 方法:“获取、头部、放置、修补、发布、删除”, 凭据:true,//允许来自浏览器的会话cookie通过 }) ); //----------------------------------中间件---------------------------------- //增加带宽以允许使用base64字符串 use(Express.json({limit:40mb,extended:true})); app.use(Express.urlencoded({limit:“40mb”,extended:true})); 应用程序集(“信任代理”,1); 应用程序使用( 会议({ 名称:“LHsession”, 机密:process.env.COOKIE\u secret, 雷萨夫:是的, 存储区:新MongoStore({mongooseConnection:mongoose.connection}), 曲奇:{ sameSite:错, 最大值:8.64e7, 安全:错误, httpOnly:false, }, }) ); //用于监视请求的实用程序 应用程序使用(摩根(“开发”)); //----------------------------------Pasport配置---------------------------------- app.use(passport.initialize()); app.use(passport.session()); 问题,node.js,express,heroku,cors,express-session,Node.js,Express,Heroku,Cors,Express Session,该项目在我的开发环境中完美地工作(在多台计算机上测试)。引发以下错误: 重要的是要注意,除了我被重定向回我的web应用程序会话时没有存储外,带有帐户的实际授权页面会显示出来 我试过的 不言而喻,这些都是无效的 我读到添加行app.set(“信任代理”) app.set(“信任代理”,1); 应用程序使用( 会议({ 名称:“LHsession”, 机密:process.env.COOKIE\u secret, 雷萨夫:是的, 存储区:新MongoStore({mongooseConnect

该项目在我的开发环境中完美地工作(在多台计算机上测试)。引发以下错误:

重要的是要注意,除了我被重定向回我的web应用程序会话时没有存储外,带有帐户的实际授权页面会显示出来

我试过的 不言而喻,这些都是无效的

  • 我读到添加行app.set(“信任代理”)
app.set(“信任代理”,1);
应用程序使用(
会议({
名称:“LHsession”,
机密:process.env.COOKIE\u secret,
雷萨夫:是的,
存储区:新MongoStore({mongooseConnection:mongoose.connection}),
曲奇:{
sameSite:错,
最大值:8.64e7,
安全:错误,
httpOnly:false,
},
})
);
  • 在Axios中,我添加了凭据
const server=axios.create({
事实上,
baseURL:process.env.REACT_APP_SERVER+“/board”,
});
  • 我读了很多文章,这篇文章看起来很有前途,可能会有用,但我希望客户机和服务器是分开的-
免责声明
  • 我是一个17岁的业余爱好者,可能有点不知所措,请把我不存在的网络知识记下来。也许给我一些材料来读
  • 我检查的环境变量已成功输入
  • 文档可能有点奇怪抱歉
  • 在最终的react构建中有很多错误和警告,但我认为这在这里并不重要

问题解决了我在我的网站域名下注册了这两个,现在它就像一个符咒。虽然没有解决cors问题,但我还是设法让我的项目开始工作。以下是对潜在罪犯的更具决定性和彻底的调查: