搜索
首页web前端js教程使用Passport与semelize和MySQL

续集是一个基于承诺的node.js orm。它可以与PostgreSQL,MySQL,Mariadb,Sqlite和MSSQL一起使用。在本教程中,我们将为Web应用程序的用户实施身份验证。我们将使用Passport,即节点的流行身份验证中间件以及semelize和MySQL来实现用户注册和登录。

入门

确保您的计算机上安装了以下内容:

  • 节点
  • mysql

对于本教程,我们将使用node.js和Express Framework,因此我们继续安装所需的内容。

1。生成一个软件包

为您的应用创建目录。在此目录中,从您的终端或命令提示符运行此操作:

 npm init<br>

这初始化了NPM依赖项管理器。这将提供一系列提示,我们将迅速通过。

  • 在没有名称的情况下输入应用程序的名称。
  • Enter使用默认版本
  • 输入描述或将其留空。
  • 对于入口点,键入server.js
  • 您可以按Enter接受其余提示的默认值。

2。安装依赖项

本教程的主要依赖项是:

  • 表达
  • 续集
  • mysql
  • 护照
  • 护照本地策略
  • Express会话
  • bcryptjs
  • 表示视图的车把

要从您的终端或命令提示符中安装它们,请接一个地运行以下一个。

 NPM安装Express-保存<br>npm安装续集 - 保存<br>npm安装续集 - 保存<br>npm安装mysql-保存<br>NPM安装护照 - 保存<br>NPM安装Passport-Local-保存<br>NPM安装快递 - 保存<br>NPM安装bcryptjs-保存<br>NPM安装台式栏 - 保存<br>npm安装mysql2-保存<br>

如果您将git用于此项目,请创建一个Express。然后,我们初始化Express,然后将其分配给变量护照模块以及Passport和Models.Secleseles sync函数。运行此操作以查看是否一切都很好:

 Node Server.js<br>

如果您收到消息“网站是实时。好!数据库看起来不错”,那么您已经成功设置了续集。

如果没有,请仔细浏览上面的步骤,并尝试通过帮助来调试问题。

步骤2:创建用户模型

我们要做的下一件事是创建用户模型,这基本上是用户表。这将包含基本的用户信息。

在我们的模型文件夹中,我们创建一个文件并将其命名为user.js。该文件的完整路径应为应用程序/型号/user.js

打开user.js文件并添加以下代码:

模块.exports = function(续集,续集){<br> var user = sequelize.define('用户',{<br> ID: {<br> 自动插入:是的,<br> primalyke:是的,<br> 类型:quelize.integer<br> },,<br> 名: {<br> 类型:sequelize.string,<br> Notempty:是的<br> },,<br> 姓: {<br> 类型:sequelize.string,<br> Notempty:是的<br> },,<br> 用户名:{<br> 类型:sequelize.text<br> },,<br> 关于: {<br> 类型:sequelize.text<br> },,<br> 电子邮件: {<br> 类型:sequelize.string,<br> 证实: {<br> Isemail:是的<br> }<br> },,<br> 密码: {<br> 类型:sequelize.string,<br> Allull:False<br> },,<br> last_login:{<br> 类型:sequelize.date<br> },,<br> 地位: {<br> 类型:sequelize.enum('Active','inative'),<br> defaultValue:“活动”<br> }<br> });<br> 返回用户;<br> }<br>

现在运行:

 Node Server.js<br>

您应该看到熟悉的“网站是实时。不错!数据库看起来不错”的消息。这意味着我们的续集模型已成功同步,如果您检查数据库,则应查看带有指定列的用户表。

步骤3:设置视图

在本节中,我们将为客户端设置视图。首先,让我们创建注册的视图并将其连接起来。

要做的第一件事是导入AuthController文件并定义注册路由。

 var authcontroller = require('../ controllers/authcontroller.js');<br> Module.exports = function(app){<br> app.get('//implyup',authcontroller.signup);<br> };<br>

现在,我们将在服务器中导入此路线,并以参数传递该应用程序。在server.js中,在模型导入之后,添加以下行:

 //路线<br>var authRoute = require('./ app/routes/auth.js')(app);<br>

运行此:

 Node Server.js<br>

现在,请访问http:// localhost:5000/Invicup,您将看到注册表格。

使用Passport与semelize和MySQL

让我们重复登录表单的步骤。和以前一样,我们将在我们的视图文件夹中创建一个名为sign.hbs的文件,并在其中粘贴以下HTML代码:

 <br> <br> <br> <title>布局中的标志</title><br> <link rel="“" stylesheet href="%E2%80%9C/styles.css%E2%80%9D"><br> <br> <br> <h2 id="带有续集和mysql">带有续集和mysql </h2>的护照<br> <br> 电子邮件地址<br> <input class="“" text name="“" email type="“"><br> 密码<br> <br> <input class="“" btn type="“" submit value="“" in><br> <br> 

以上是使用Passport与semelize和MySQL的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
Java vs JavaScript:开发人员的详细比较Java vs JavaScript:开发人员的详细比较May 16, 2025 am 12:01 AM

javaandjavascriptaredistinctlanguages:javaisusedforenterpriseandmobileapps,while javascriptifforInteractiveWebpages.1)JavaisComcompoppored,statieldinglationallyTypted,statilly tater astrunsonjvm.2)

JavaScript数据类型:浏览器和nodejs之间是否有区别?JavaScript数据类型:浏览器和nodejs之间是否有区别?May 14, 2025 am 12:15 AM

JavaScript核心数据类型在浏览器和Node.js中一致,但处理方式和额外类型有所不同。1)全局对象在浏览器中为window,在Node.js中为global。2)Node.js独有Buffer对象,用于处理二进制数据。3)性能和时间处理在两者间也有差异,需根据环境调整代码。

JavaScript评论:使用//和 / * * / * / * /JavaScript评论:使用//和 / * * / * / * /May 13, 2025 pm 03:49 PM

JavaScriptusestwotypesofcomments:single-line(//)andmulti-line(//).1)Use//forquicknotesorsingle-lineexplanations.2)Use//forlongerexplanationsorcommentingoutblocksofcode.Commentsshouldexplainthe'why',notthe'what',andbeplacedabovetherelevantcodeforclari

Python vs. JavaScript:开发人员的比较分析Python vs. JavaScript:开发人员的比较分析May 09, 2025 am 12:22 AM

Python和JavaScript的主要区别在于类型系统和应用场景。1.Python使用动态类型,适合科学计算和数据分析。2.JavaScript采用弱类型,广泛用于前端和全栈开发。两者在异步编程和性能优化上各有优势,选择时应根据项目需求决定。

Python vs. JavaScript:选择合适的工具Python vs. JavaScript:选择合适的工具May 08, 2025 am 12:10 AM

选择Python还是JavaScript取决于项目类型:1)数据科学和自动化任务选择Python;2)前端和全栈开发选择JavaScript。Python因其在数据处理和自动化方面的强大库而备受青睐,而JavaScript则因其在网页交互和全栈开发中的优势而不可或缺。

Python和JavaScript:了解每个的优势Python和JavaScript:了解每个的优势May 06, 2025 am 12:15 AM

Python和JavaScript各有优势,选择取决于项目需求和个人偏好。1.Python易学,语法简洁,适用于数据科学和后端开发,但执行速度较慢。2.JavaScript在前端开发中无处不在,异步编程能力强,Node.js使其适用于全栈开发,但语法可能复杂且易出错。

JavaScript的核心:它是在C还是C上构建的?JavaScript的核心:它是在C还是C上构建的?May 05, 2025 am 12:07 AM

javascriptisnotbuiltoncorc; saninterpretedlanguagethatrunsonenginesoftenwritteninc.1)javascriptwasdesignedAsalightweight,解释edganguageforwebbrowsers.2)Enginesevolvedfromsimpleterterterpretpreterterterpretertestojitcompilerers,典型地提示。

JavaScript应用程序:从前端到后端JavaScript应用程序:从前端到后端May 04, 2025 am 12:12 AM

JavaScript可用于前端和后端开发。前端通过DOM操作增强用户体验,后端通过Node.js处理服务器任务。1.前端示例:改变网页文本内容。2.后端示例:创建Node.js服务器。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

北端:融合系统,解释
1 个月前By尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
4 周前By尊渡假赌尊渡假赌尊渡假赌
<🎜>掩盖:探险33-如何获得完美的色度催化剂
2 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用