mhtutorials/dpfp4500ws

指纹识别FP 4500 + WebSockets

安装: 136

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 0

公开问题: 1

语言:JavaScript

1.0.3 2024-05-04 20:27 UTC

This package is auto-updated.

Last update: 2024-09-13 01:48:08 UTC


README

数字指纹读取器FP 4500 + WebSockets

License Latest Stable Version Total Downloads

视频教程

https://youtu.be/Q2OziNSHN2U

先决条件

  1. 已安装composer
  2. 已安装NodeJs
  3. 您的Laravel应用程序中已实现功能齐全的用户CRUD。

如果您尚未创建,请创建Laravel项目

1.您可以使用laravel new:如果您已全局安装Laravel安装程序(laravel/installer),则可以使用以下命令

    laravel new nombre-del-proyecto

将 nombre-del-proyecto 替换为您希望的新Laravel项目名称。

2.您可以使用composer create-project:如果您更喜欢直接使用Composer,则可以这样做

    composer create-project --prefer-dist laravel/laravel nombre-del-proyecto

与之前一样,将 nombre-del-proyecto 替换为您希望的新Laravel项目名称。

创建本地域名

请按照我们的朋友 codersfree.com 分享的步骤操作 https://codersfree.com/posts/configurar-virtualhost-xampp-windows-guia-paso-a-paso

安装API路由(Laravel 10或更高版本)

执行以下命令

    php artisan install:api

重新生成项目ID(Laravel 10或更高版本)

执行以下命令

    php artisan key:generate

这将创建在routes目录中的api.php文件。

创建登录(可选)

执行以下命令以下载Laravel登录包

    composer require laravel/ui    

执行以下命令以发布登录视图

    php artisan ui:auth

安装

要安装此包,请在终端中执行以下命令

composer require mhtutorials/dpfp4500ws

安装完成后,请通过在终端中执行以下命令发布模型、控制器、视图、迁移等

    php artisan vendor:publish --tag=mhtutorials-dpfp4500ws-p

将配置添加到config/services.php文件中

将 "mhdpfp" 复制到您的应用程序的config/services.php文件中。在此配置中,将存储API密钥,以便插件可以连接到您的Laravel项目的服务。

注意:如果您的文件已包含其他密钥,则可以将其作为数组中的另一个密钥添加到末尾

return [   
 'mhdpfp' => [
            'key' => env('PLUGIN_BIOMETRIC_KEY'),        
     ],
];

修改.env文件

在您的.env文件中创建键:PLUGIN_BIOMETRIC_KEY,如下所示

PLUGIN_BIOMETRIC_KEY="tu clave aqui"

键的值通过以下方式编码:"用户:密码"。)

您的API密钥示例:将 "tu_usuario:tupass" 编码为 base64 -> 结果 dHVfdXN1YXJpbzp0dXBhc3M= 最后一个将是您需要配置的密钥。

您可以访问页面: https://www.base64encode.org/,复制 tu_usuario:tupass 并单击 "ENCODE" 按钮,结果将是:dHVfdXN1YXJpbzp0dXBhc3M=

注意:这些凭据将在稍后配置生物识别插件时设置。

添加API路由

  1. 将以下import复制到您的routes/api.php文件中

    use App\Http\Controllers\DpfpApi\UserRestApiController; 
  2. 将以下路由复制到您的routes/api.php文件中

    //SensorRestApi
    Route::post("list_finger", [UserRestApiController::class, "index"]);
    Route::post("save_finger", [UserRestApiController::class, "store"]);
    Route::post("sincronizar", [UserRestApiController::class, "sincronizar"]);

添加Web路由

  1. 将以下import复制到您的routes/web.php文件中

    use App\Http\Controllers\DpfpApi\UserRestApiController;
  2. 将以下路由复制到您的routes/web.php文件中

    //Rutas para interactuar con el plugin
    Route::get('/users', [UserRestApiController::class, 'users_list'])->name('dpfp.index');
    Route::get('/users/verify_users', [UserRestApiController::class, 'verify_users'])->name('verify_users');
    Route::get('/users/getdata_users/{user_id}/{fingerId}', [UserRestApiController::class, 'getDataUser'])->name('getdata_users');
    Route::get("/users/{user}/finger-list", [UserRestApiController::class, "fingerList"])->name("finger-list");

执行迁移

  1. 执行以下命令
       php artisan migrate

将字段类型从BLOB更新为LONGBLOB

  1. 将表:fingerprints中的'fingerprint'字段的类型从blob更改为longblob

ModCampo

将指纹关系添加到User.php模型

将以下关系复制到您的User.php模型中

//Relacion uno a muchos
public function fingerprints() {
       return $this->hasMany("App\Models\DpfpModels\FingerPrint");
}

更改ServerNodeJs/index.js文件中的以下行

http://pruebafp.testhttp://tu-dominio 在第6行和第20行

    res.setHeader('Access-Control-Allow-Origin', 'http://pruebafp.test');

    origin: "http://pruebafp.test",

在NodeJs服务器ServerNodeJs上安装Express

进入你的NodeJs服务器在项目中的路径,例如:"Tu_Proyecto_Laravel/ServerNodeJs",然后执行以下命令

    npm install express

在你的项目中安装PM2

如果尚未安装,请安装Node.js

PM2是一个Node.js进程管理工具,因此你需要在你的系统中安装Node.js。你可以从其官方网站 https://node.org.cn/en 下载Node.js的最新版本。

  1. 安装PM2

以管理员身份打开命令提示符(cmd)。执行以下命令全局安装PM2

    npm install pm2 -g

标志-g会全局安装PM2,这样你就可以从系统的任何位置访问它。

  1. 验证安装

安装完成后,你可以通过执行以下命令来验证PM2是否正确安装

    pm2 --version

这应该会显示你已安装的PM2版本。

  1. 基本使用

要使用PM2执行应用程序,请导航到应用程序的目录并在命令行中执行以下命令

    pm2 start app.js

(将"app.js"替换为你的应用程序主文件名)。

  1. 要查看PM2管理的进程列表,使用以下命令
    pm2 list
  1. 你可以使用以下命令停止应用程序
    pm2 stop <app_name_or_id>

(将"<app_name_or_id>"替换为你的应用程序名称或ID)。

你可以在PM2的官方文档中找到有关PM2及其命令的更多信息。

重要信息

请记住发布"storage"的快捷方式,以便存储用户指纹,为此请执行以下命令

php artisan storage:link

仅针对Windows下载和配置生物识别插件

从以下链接下载生物识别插件安装程序"BiometricWebBridgeSocket-For-Laravel Setup.exe":https://drive.google.com/file/d/1thg3cE6Va-N9Gm1xrx2DiW50CxYwM170/view?usp=sharing

  1. 打开生物识别插件程序,填写配置表单中的字段

    Url Api: 这是你的项目url,指向api路由,例如:https:///tu-projecto/public/api/http://tu-dominio.xx/api/

    Url Socket: 这是你的项目url,用于配置web socket,默认为:ws://:3000

    要获取密钥,请访问你的项目路径:/users,然后点击"Crear Server Key"和"Crear Client Key"链接

    ConfigForm

    ConfigForm

    Server Key和Client Key: 是由Web应用程序生成的密钥

    ConfigForm

    用户名和密码:是你在上述"修改.env文件"部分编码的凭证,例如在这个例子中是

    用户名:tu_usuario

    密码:tupass

    现在点击带有保存图标按钮,插件将自动重新启动,如果一切配置正确,你现在可以开始注册和验证用户的指纹。

    希望这个包能帮助你完成项目 :)