planetadeleste/oc-jwtauth-plugin

OctoberCMS 的 JSON Web Token 认证插件,与 Lovata.Buddies 集成

安装: 37

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 28

类型:october-plugin

1.3.5 2021-05-07 11:42 UTC

This package is auto-updated.

Last update: 2024-09-07 18:47:07 UTC


README

Known Vulnerabilities

简介

此插件是 rluders/oc-jwtauth-plugin 的分支,已适配用于与 Lovata.Buddies 插件而不是 RainLab.Users。

此插件为 OctoberCMS 提供了与 Lovata.Buddies 集成的 JSON Web Tokens 认证机制。对于使用 Angular、Vue.js、React 或其他现代 JavaScript 框架构建的 Web 应用程序至关重要。

要求

主题

教程

安装

是的,您可以从中包仓库安装它(但我不提供文档 - 在这种情况下,我将假设您知道自己在做什么)。我强烈建议您从 OctoberCMS 市场中的 产品页面 安装。

配置

您必须为您的应用程序设置一个密钥令牌。要在 October 后端中完成此操作,请访问:设置 > 用户 > JWTAuth

用法

以下是此插件可用的端点列表。

如果您使用 Postman,您可以点击此处导入包含所有测试所需的调用的集合。

登录

POST /api/auth/login

路由名称

api.auth.login

参数

字段 login 的值可以是账户 emailusername。您可以在 RainLab.User 配置中选中应使用哪个字段进行登录。

响应

成功

代码:200

{
  token: (string),
  user: (object)
}

错误

代码:401

{
  error: (invalid_credentials|could_not_create_token|user_inactive|user_is_banned)
}

注册

POST /api/auth/register

路由名称

api.auth.register

参数

字段 username 可以为 必需。这取决于您的 RainLab.User 配置。

响应

成功

代码:201

[]

错误

代码:401

{
  error: (object|registration_disabled)
}

支持的事件

  • rainlab.user.beforeRegister
  • rainlab.user.register

账户激活

POST /api/auth/account-activation

路由名称

api.auth.account-activation

参数

响应

成功

代码:200

[]

错误

代码:422

{
  error: (invalid_activation_code|invalid_user|user_not_found)
}

忘记密码

POST /api/auth/forgot-password

路由名称

api.auth.forgot-password

参数

响应

成功

代码:200

[]

错误

代码:404

{
  error: (user_not_found)
}

重置密码

POST /api/auth/reset-password

路由名称

api.auth.reset-password

参数

响应

成功

代码:200

[]

错误

代码:422

{
  error: (invalid_reset_password_code|invalid_user|invalid_reset_password_code)
}

刷新令牌

POST /api/auth/refresh-token

路由名称

auth.api.refresh-token

参数

响应

成功

代码:200

{
  token: (string)
}

错误

代码:403

{
  error: (could_not_refresh_token|given_token_was_blacklisted)
}

获取用户

GET /api/auth/me

中间件

jwt.auth

路由名称

api.auth.me

参数

响应

成功

代码:200

{
  user: (object)
}

错误

代码:404

{
  error: (user_not_found)
}

已知问题

尽管我一直在努力解决可能出现的问题,但仍然可能发生意外。以下是可能的问题及其解决方法。

Apache 用户注意事项

为了使用授权 Bearer 令牌,您必须将以下代码添加到您的 .httaccess

RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]

许可

GPLv3