我如何使用 Passport-local.js 存储其他表单字段

2024-03-04

我正在研究 node+passport.js 身份验证。我制作了一个简单的登录/注册应用程序。它工作正常,但是它只存储用户名和密码。

如何通过具有工作登录护照身份验证的 Signup.html 页面将其他表单字段(例如电话号码、电子邮件、爱好、性别)存储到数据库中?任何人都可以解决这个问题,以便我可以将所有字段存储在数据库中......

//my schema is :--
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var userSchema = mongoose.Schema({
    local            : {
        username     : String,
        gender       : String,
        phone        : String,
        email        : String,
        password     : String
    }
 });
userSchema.methods.generateHash = function(password) {
    return bcrypt.hashSync(password, bcrypt.genSaltSync(8), null);
};
userSchema.methods.validPassword = function(password) {
    return bcrypt.compareSync(password, this.local.password);
};


var User = mongoose.model('user', userSchema);

module.exports = User;

在此代码中,我使用电子邮件、用户名、密码、性别、电话的模式以及 signup.html 页面中的给定字段。但它只存储用户名和密码字段.........


打开 Passport.js 文件(通常在 config 文件夹内)

找到这行代码。

    passport.use('local-signup', new LocalStrategy({   // 'login-signup' is optional here   
    usernameField : 'email',
    passwordField : 'password',        
    passReqToCallback : true },function(req, email, password, done) {
   var gender = req.body.gender;
  var username = req.body.username;
  var phone = req.body.phone;
 // Now you can access gender username and phone

}));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我如何使用 Passport-local.js 存储其他表单字段 的相关文章

  • Nodejs 错误:libcouchbase.so.2:无法打开共享对象文件:没有这样的文件或目录

    我正在做一个nodejs项目 它在我的笔记本电脑上工作 但当我尝试在桌面上运行它时 它抛出错误 libcouchbase so 2 无法打开共享对象文件 没有这样的文件或目录 有人能建议我可能出了什么问题吗 提前致谢 也许它可以帮助某人 看
  • 身份验证在不应该返回“401(未经授权)”时返回

    我第一次设置身份验证功能 在用户登录后得到了一些意外的结果 一位同事给了我一个具有工作身份验证的应用程序 以模仿我的应用程序 看起来我所做的一切都是正确的 我在前端使用 AngularJS 在后端框架使用 SailsJS 并且护照JS ht
  • 使用 --prof 选项创建多个日志文件而不是一个 v8.log 的节点

    我正在尝试使用 prof 选项来分析我的 Node 应用程序 但我发现不是一个单一的 v8 log 文件 而是使用诸如isolate 0x9582b40 v8 log isolate 0xa1cab78 v8 6049 等前缀创建的多个文件
  • 为任何更新查询增加 Mongoose 文档版本的简单方法?

    我想开始利用 Mongooses 文档版本控制 v key 我在实际增加版本值时遇到了问题 然后我发现您必须添加this increment 执行查询时 有没有办法自动递增 目前 我只是将其添加到pre用于更新类型查询的中间件 module
  • 在 Node.js 中生成带条形码的 pdf

    我在用https github com devongovett pdfkit https github com devongovett pdfkit生成 PDF 文件 我可以简单地使用类似的方法 app get get pdf req re
  • 如何在 Electron 应用程序上获得圆角?

    我目前正在尝试在我正在制作的电子应用程序上获得圆角 我已经尝试了目前在线提供的几乎所有解决方案 但没有一个有任何区别 如何让 Electron 应用程序变得圆润 制作无框透明窗 const myWindow new BrowserWindo
  • Node js 应用程序错误未响应端口 8080 上的 HTTP ping,站点启动失败。在 Azure 应用程序服务 linux 上(不是 docker)

    Nodejs 应用程序在本地运行 如果直接从 Visual Studio 部署到 Azure 应用程序服务 Linux 也可以在应用程序服务上运行 但在使用 azure devops 部署时不起作用 使用 Visual Studio 的工件
  • 在 Firebase Cloud Functions 中仅部署单个非导出函数

    我在我的 firebase 云函数文件中创建了以下函数 function whatsMyName name return your name is name 当我在命令行中运行以下命令时 该函数is部署 firebase deploy on
  • 如何通过setTimeout函数定期打印数字?

    var i 0 function counter for i i lt 100 i setTimeout gt console log i 2000 counter 我想以 2 秒的间隔打印 i 但它立即打印 每次打印调用只需要几微秒 为什
  • 如何让 webpack 和 iis express 协同工作?

    I have Angular 2 和 Webpack 2 入门 https github com qdouble angular webpack2 starter它通过 webpack dev server 在节点上运行 我如何使用 web
  • ExpressJS 将变量传递给 JavaScript

    我对此完全迷失了 我正在使用 NodeJS 获取 JSON 我需要将变量传递到我的页面并让 JavaScript 使用数据 app get test function req res res render testPage myVar My
  • mocha.opts 已弃用,如何迁移到 package.json?

    我正在开发一个大型项目 自从上周我更新了摩卡以来 现在我们收到警告 DeprecationWarning 通过 mocha opts 进行的配置已被弃用并且 将从 Mocha 的未来版本中删除 使用 RC 文件或 改为 package js
  • 无法根据TypeOrm中的外键过滤数据

    我使用 Nest Js PostgresQl 和 Typeorm 我在 typeorm 中有这两个实体 export class Meta PrimaryGeneratedColumn name metaId metaId number C
  • 无法从 bash 脚本使用 nvm

    我正在尝试编写一个 shell 脚本来自动设置我的开发环境 安装 python nvm node mongo 等 我正在使用 nvm 来安装 Node js 它告诉您关闭并重新打开终端以开始使用 nmv 命令 我尝试获取 bashrc 和
  • express-session:滚动会话过期配置

    所以我在 mongo 商店中使用快速会话 如下所示 app use session secret some secret here saveUninitialized false resave false store new MongoSt
  • Nodejs + npm,在ntfs分区安装模块

    我在安装 npm 模块时遇到问题 NodeJS 安装在 Windows 主机上 Virtual Box 上运行的 Ubuntu 11 10 上 我的项目文件位于 NTFS 分区上 我必须与 Windows 共享它们 当我尝试安装某些 npm
  • sails.js 水线嵌套填充查询

    我有一个返回对象的多个结果的查找查询 该对象包含一个包含另一个模型的模型 问题是水线不支持嵌套填充 因此它填充第一个模型 但不填充它的内部模型 我见过的所有示例都是针对 findOne 查询的 我正在寻找一种方法来解决返回多个结果的查找查询
  • MongoDB 中两个集合之间的 Diff()

    我做过研究 如果这是一个重复的问题 我很抱歉 但其他问题的解决方案并不适合我 因此 我提出了一个新问题 使用 Javascript 比较两个集合的最佳方法是什么 我有数千个这样的 Mongo 文档格式的标头 url google com h
  • 茉莉花节点没有输出

    我是 JavaScript Node js 和 jasmine 的新手 我正在尝试运行 Node Craftsman Book 一书中的测试 FilesizeWatcher 我创建了 package json 文件并运行 npm insta
  • Node.js 中的 Twilio 短信回复

    我正在使用 node js 中的 twilio 编写移动通知系统 目前可以向用户发送短信 但我希望用户能够回复我 我需要收集用户发送文本的电话号码以及消息的内容 以查询我的 mongoosedb 我找不到太多这方面的信息 因此非常感谢您的帮

随机推荐

  • 如何使用 Hibernate Context 会话创建通用 DAO 类

    我正在尝试使用 Hibernates Context Sessions 实现通用 DAO 以下是我的镜头 import java io Serializable public interface GenericDao
  • 在批处理文件中登录并注册系统

    所以 我非常努力地尝试在批处理文件中制作登录和注册系统 我注册成功 只是将用户名和密码回显到 dll 文件或 txt 文件 但我不知道如何登录 我尝试了很多代码 但我不明白在互联网上找到的登录 注册代码 例如 我尝试过的 echo off
  • 如何使Java应用程序独立?

    我必须将 Java 应用程序刻录到 CD 上 此应用程序必须在之前未进行任何安装的情况下在每台 Windows PC 上运行 也不应安装 JRE 我想您也可以将 JRE 从程序文件夹复制到 CD 上 然后 添加批处理脚本以使用 本地 JRE
  • 词法或预处理器问题:找不到“MyViewController.h”文件

    当我尝试更改视图控制器名称时 h and m 我收到此错误 Lexical or PreProcessor Issue MyViewController h file not found 仅供参考 尽管存在词法错误 但应用程序仍可以正确运行
  • Spring 3.1实例化bean时出错

    我有以下课程 public abstract class AbstractBusinessModule public class MS3BusinessModule extends AbstractBusinessModule public
  • 在 Woocommerce 中添加运送区域的州而不是邮政编码

    我有一个 woocommerce 网站 默认情况下 在 woocommerce 中 我可以通过邮政编码限制运输区域 但是 如何在送货区域中添加我所在国家 地区的州 以便客户可以通过结账页面中的 下拉菜单 选择他们居住的州 而不是输入邮政编码
  • Heroku 给出 500 错误,信息很少 + 内部服务器错误

    Heroku 在页面上显示此消息 internal server error 此错误显示在控制台中 GET 500内部服务器错误 检查 Heroku 应用程序的日志以查看更多详细信息 您可以使用流式传输日志Heroku CLI https
  • 远程 logcat - Android Studio

    是否可以看到远程设备上的应用程序的logcat 简而言之 是否可以远程logcat 我向客户端发送了一个应用程序 这在您的设备中给出了错误 我使用同一版本的模拟器进行了测试 但仅发生了该错误 是否可以查看远程应用程序的 logcat 设备
  • Brushes.White 减慢了图形演示速度

    下面是 Conway 的生命游戏在 WPF 中的 非常幼稚的 实现 这只是一个演示 xaml
  • 这种方法名称/局部变量混合会发生什么?

    我在一些代码中发现了一个执行以下操作的方法 def method1 method1 1 2 2 3 4 5 5 return method1 uniq end ruby 如何处理这个问题 我知道这是错误的代码 但是 ruby 如何知道如何处
  • 从文件加载公钥数据

    在我的应用程序中 我生成一个公钥 私钥对并将它们存储在磁盘上以供以后使用 加载并重新初始化私钥工作正常 但对于私钥 我得到一个未知的 KeySpec 类型 java security spec PKCS8EncodedKeySpec 我不知
  • Jquery / Javascript - 添加迄今为止的年份变量

    我有一个小麻烦 如果能得到一些帮助就太好了 我正在创建一个小表单 我想将当前日期格式化 dd mm yyyy 并从下拉框中添加年份变量以创建最终到期日期 唯一的麻烦是我不知道如何将开始日期解析为日期变量以完成计算 任何想法或帮助将不胜感激
  • 在 Delphi 中读取/解析非类型二进制文件的最佳方法

    我想知道解析非类型二进制文件的最佳方法是什么 例如 EBML 文件 http ebml sourceforge net EBML 基本上是一个二进制 xml 文件 它基本上可以存储任何内容 但目前它的主要用途是 MKV 视频文件 matro
  • 从数据库sqlite获取信息

    如何从数据库中获取信息 我想执行这一行 String nom db execSQL select name from person where id id 任何人都可以纠正我这一行以从表中获取人名吗 如果您的 id 是整数数据类型 请尝试此
  • 检测设备是否支持通话?

    下面的代码可以可靠地用来确定设备是否支持通话吗 我担心的是 如果苹果将 iphone 字符串更改为其他内容 假设他们决定拥有 iphone 3g iphone 4 等 UIDevice currentDevice model isEqual
  • Xamarin.forms 在 web 视图中显示 PDF 不起作用

    我从我的服务器下载 pdf 流 在我的应用程序中 我将 bytearray 作为 pdf 保存到本地文件夹中 但是当我在网络视图中打开它时 它只显示一个白色页面 我按照这个例子 https developer xamarin com rec
  • java.lang.illegalstateException数据库未打开android

    当我尝试插入数据库日志时 猫显示如下错误java lang illegalstateexception database not open android 但我已经使用打开数据库 db SQLiteDatabase openDatabase
  • Rails Admin 与 Active Admin:Rails Admin 生成工具[重复]

    这个问题在这里已经有答案了 可能的重复 Rails Admin 与 ActiveAdmin https stackoverflow com questions 6542075 rails admin vs activeadmin 我知道已经
  • Laravel:路由中间件和策略之间的区别

    使用 Laravel 开发应用程序我意识到可以做什么Policy完全可以用Middleware 假设我想阻止用户更新路线 如果他 她不是信息的所有者 我可以轻松地从路线中进行检查 并且可以从策略中执行相同的操作 所以我的问题是为什么我应该使
  • 我如何使用 Passport-local.js 存储其他表单字段

    我正在研究 node passport js 身份验证 我制作了一个简单的登录 注册应用程序 它工作正常 但是它只存储用户名和密码 如何通过具有工作登录护照身份验证的 Signup html 页面将其他表单字段 例如电话号码 电子邮件 爱好