Socket
Book a DemoInstallSign in
Socket

@aplus-frontend/aplus-auth-sdk

Package Overview
Dependencies
Maintainers
12
Versions
30
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aplus-frontend/aplus-auth-sdk

aplus auth sdk for aplus frontend project

npmnpm
Version
1.0.0
Version published
Weekly downloads
212
-13.47%
Maintainers
12
Weekly downloads
 
Created
Source

@aplus-frontend/aplus-auth-sdk

NPM Version NPM Downloads NPM License

💁 介绍

aplus前端项目登录SDK,适用于aplus单体项目或者微前端项目,提供快速接入登录功能,无需在鉴权的业务逻辑担心。

⚙️ 快速开始

  #根路径加 -w
  pnpm add @aplus-frontend/aplus-auth-sdk

🔌 接入案例

  • 登录中心
//vue3 项目 main.ts中

import { authHub, authClass } from '@aplus-frontend/aplus-auth-sdk';
//初始化链接
const authClient = authHub({
  platform: 'aplus',
  used: 'login', //指明用途
  env: import.meta.env.MODE,
  debug: true,
  apiUrl: import.meta.env.VITE_GLOB_API_URL,
  urlPrefix: import.meta.env.VITE_GLOB_API_URL_PREFIX
});
//用途是login,init什么都不返回
await authClient.init();
//这里是一些登录请求逻辑
//成功之后设置token
await authClient?.setAuthToken(res.token);
  • 客户端(应用端)
//vue3 项目 main.ts中

import { authHub, authClass } from '@aplus-frontend/aplus-auth-sdk';
//初始化链接
authClient = authHub({
  platform: 'aplus',
  used: 'site', //指明用途
  env: import.meta.env.MODE,
  debug: true,
  apiUrl: import.meta.env.VITE_GLOB_API_URL,
  urlPrefix: import.meta.env.VITE_GLOB_API_URL_PREFIX
});
//用途是site init会返回token
const token = await authClient.init();
console.log('token:', token);
if (token) {
  tokenRef.value = token;
}
const userInfo = await authClient.getUserInfo();
if (userInfo) {
  console.log('userInfo:', userInfo);
}

const menus = await authClient.getUserMenus();
if (menus) {
  console.log('menus:', menus);
}

const permissions = await authClient.getUserPermissions();
if (permissions) {
  console.log('permissions:', permissions);
}

🥽 authHub 参数

属性类型描述是否必传填
env'development' | 'dev' | 'test' | 'uat' | 'prod'环境设置否 默认dev
hubUrlstringHub URL否 默认dev的hub
redirectUrlstring重定向 URL否 默认dev的登录
whetherRedirectboolean是否重定向否 默认true
platform'aplus' | 'admin'平台否 默认aplus
used'login' | 'site'用途类型否 默认site
debugboolean调试模式否 默认false
maxRetriesnumber最大重试次数否 默认3
apiUrlstringAPI URL是 建议直接设置import.meta.env.VITE_GLOB_API_URL
urlPrefixstringURL 前缀是 建议直接设置import.meta.env.VITE_GLOB_API_URL_PREFIX

📦️ authHub 方法

方法名描述参数返回值
init初始化认证中心options: UserConfig`Promise<string
getAuthToken获取认证 tokenPromise<string>
setAuthToken设置认证 tokentoken: stringPromise<void>
isHasAuthToken检查是否存在认证 tokenPromise<boolean>
isLegalToken检查 token 是否合法Promise<boolean>
removeAuthToken移除认证 tokenPromise<{ code: number; message: string }>
getUserInfo获取用户信息`Promise<CurrentUserInfo
getUserMenus获取用户菜单`Promise<UserMenus
redirectLogin重定向到登录页面Promise<void>

🚨 注意

  • init 方法在 used'login' 时不会返回任何值,为site时会返回token。另外开发环境下,因为vite热重载会提示报错:init方法已经被调用过这是正常现象。
  • setAuthToken 方法需要在登录接口成功后再调用,以设置用户的认证 token。
  • redirectLogin 方法会清空浏览器历史记录并重定向到登录页面。

Keywords

@aplus-frontend/aplus-auth-sdk

FAQs

Package last updated on 08 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts