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

使用Passport与semelize和MySQL

尊渡假赌尊渡假赌尊渡假赌
发布: 2025-03-11 11:04:09
原创
755 人浏览过

续集是一个基于承诺的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>带有续集和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
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板