- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
您好,我正在学习 Node with React full web stack 类(class),但我遇到了一个大问题,我不知道它为什么会出现,或者从什么出现。
我的终端显示此错误:
req.session.regenerate(function(err) {
^ TypeError: req.session.regenerate is not a function
我的代码看起来像
const express = require("express");
const mongoose = require("mongoose");
const cookieSession = require("cookie-session");
const passport = require("passport");
const keys = require("./config/keys");
require("./models/User");
require("./services/passport");
mongoose.connect(keys.connect_url);
const app = express();
app.use( cookieSession({
maxAge: 30 * 24 * 60 * 60 * 1000,
keys: [keys.cookieKey], }) );
app.use(passport.initialize());
app.use(passport.session());
require("./routes/authRoutes")(app);
const PORT = process.env.PORT || 5000;
app.listen(PORT);
Passport .js
const passport = require("passport");
const GoogleStrategy = require("passport-google-oauth20").Strategy;
const mongoose = require("mongoose");
const keys = require("../config/keys");
const User = mongoose.model("users");
passport.serializeUser((user, done) => { done(null, user.id); });
passport.deserializeUser((id, done) => {
User.findById(id).then((user) => {
done(null, user); }); });
passport.use(new GoogleStrategy(
{
clientID: keys.googleClientId,
clientSecret: keys.googleClientSecret,
callbackURL: "/auth/google/callback",
},
(accessToken, refreshToken, profile, done) => {
User.findOne({ googleId: profile.id }).then((existingUser) => {
if (existingUser) {
// we already have a record with the given profile ID
done(null, existingUser);
} else {
// we don't have a user record with this ID, make a new record!
new User({ googleId: profile.id })
.save()
.then((user) => done(null, user));
}
});
} ) );
authRouters.js
const passport = require("passport");
module.exports = (app) => {
app.get(
"/auth/google",
passport.authenticate("google", {
scope: ["profile", "email"],
})
);
app.get("/auth/google/callback", passport.authenticate("google"));
app.get("/api/current_user", (req, res) => {
res.send(req.user);
});
};
我真的不知道问题来自于它,我可以说当我要去
localhost:5000/auth/google
时出现了
最佳答案
我在做同样的类(class),在udemy上有修复。来自 Udemy:
由于不兼容,Passport v.0.6.0 目前已损坏:
https://github.com/jaredhanson/passport/issues/907
维护者建议使用最新的 v0.5.0,直到推出修复程序。利用:
npm卸载 Passport
npm 安装 Passport @0.5
这对我来说很好。
关于javascript - TypeError : req. session.regenerate 不是使用 Passport 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72375564/
我正在按照此链接的说明进行操作。 https://reactjs.org/docs/add-react-to-a-website.html 我有以下代码并且它有效: const domContaine
我正在使用 Parcel 来捆绑我的项目并 Jest 运行我的测试。 一切正常,但在测试中我有 async/await关键字,我必须导入 regenerator-runtime/runtime像这样:
我在我公司的代码库中注意到了它,它每周有 3000 万次下载,所以我很好奇它的重要性。 最佳答案 regenerator-runtime 是编译/转译的运行时支持async功能。 (它可能还有其他用途
是否可以“强制”为 specflow 功能文件重新生成步骤定义?我已创建此功能文件,但无法生成所有步骤。我收到一条消息,所有步骤都已绑定(bind),但是当我运行测试时,我收到一个错误,指出相同的步骤
上周我们进行了一次大型站点迁移,转储了大约 1200 个 mysql 数据库并恢复了它们。但是在这个过程中,我们恢复了“mysql”数据库,然后我们失去了所有已经在新服务器上创建的权限和用户。 有没有
我有一个如下指定的对象: { "player settings": [ { "id": 1, "labelName": "site language", "
尝试运行 react native 项目,但我收到此错误: Unable to resolve "/Users/bobby/node_modules/babel-runtime/regenerator
一旦我尝试使用 Promises,Browserify 就会抛出此错误。 在 中找不到模块“regenerator-runtime/runtime” 我尝试过 Node 版本 10.15.3 和 12
我正在寻找一种完全禁用 babel 生成器函数转换的方法。对于 babel 5 有一个 blacklist 选项,但是对于 babel 6 似乎没有办法做到这一点(至少我没有在官方网站上找到任何文档)
我们将 Git 与 Gerrit 结合使用,使用 commit hook 为 Gerrit 生成 change id。现在的问题是,当 cherry-picking 提交时,不会触发提交 Hook ,
对于基于SpecFlow的测试项目,在项目上下文菜单(右键单击)上有一个名为“重新生成功能文件”的命令,该命令(顾名思义)将为SpecFlow测试的功能文件重新生成支持代码。我正在使我们的过程尽可能地
我遵循了此链接中的 gRPC 快速入门文档 https://grpc.io/docs/languages/go/quickstart/在重新生成 gRPC 代码时,我收到错误(未知标志:--go_op
我是 ant 的新手,而且更习惯 Makefile。在一个项目中,名为 Message_zh.class 等的 i18n 语言模块是在每次编译时无条件地从 zh.po 等构建的,尽管它们已经存在,这浪
我遇到了这个问题: request.session.regenerate(function() { request.session.user = username;
是否可以重新生成 Interweld TeamSite 6.7.2 中的所有页面?仅选择一个文件夹并单击“操作”->“重新生成页面”是行不通的。它收到错误消息:“不是生成的文件”。 那么有没有通过文件
我正在制作一个消息系统,其中消息ID是session_id并且它位于session_regenerate id上。 它工作正常,但是当我更改模板时,它不断出现如下错误: " Warning: sess
我无法让 ASP 身份按需刷新其存储在 cookie 中的身份。 在 Startup.Auth.cs 文件中,cookie 设置为重新生成,如下所示: app.UseCookieAuthenticat
您好,我正在学习 Node with React full web stack 类(class),但我遇到了一个大问题,我不知道它为什么会出现,或者从什么出现。 我的终端显示此错误: req.sess
我有一个非常大的数据库连接到我的 Entity Framework 。我有一组特定的表,其中从设计中删除了一个公共(public)键 (fk)。当我“从数据库更新模型”时,我收到了关于这个现在丢失的
我正在开发一个 NPM 模块,但我的 babel 配置一直有问题。我正在使用 ES6,特别是异步/等待、静态类方法和导入/导出。 起初,我遇到了以下常见问题:ReferenceError: regen
我是一名优秀的程序员,十分优秀!