SuperAPI AI 工具集

ping-orchestration-reactjs-davinci-sdk

前端与建站

查看项目

更新于 10-16 08:05

技能介绍

用途:在 ReactJS 单页应用中集成 Ping Identity DaVinci Client(@forgerock/davinci-client),对接 PingOne DaVinci 完成用户认证,可作为示例应用从零搭建,也可仅生成 SDK 集成文件接入现有项目。

主要能力:初始化 DaVinci 客户端(OIDC 配置);提供自定义 hook useDavinci 管理分步认证;按采集器类型渲染表单组件,覆盖 SingleValueCollector、ActionCollector、ObjectValueCollector、MultiValueCollector、NoValueCollector 等分类,支持文本、密码、单选、多选、提交、流程跳转、社交登录、设备注册与认证、手机号、只读、PingOne Protect、FIDO2 等采集器;用 React Router 保护路由,用 Context 管理认证状态,实现登录、登出及 OIDC userinfo 用户资料展示,并处理成功、错误与失败状态。技术上使用 JavaScript(JSX)、React 18+、React Router 6+、Vite,要求 Node.js >= 18.12.0。

使用方式:先安装依赖 npm install @forgerock/davinci-client react react-dom react-router-dom,可选 npm install @forgerock/protect 与 @forgerock/oidc-client;用 npm install --save-dev vite @vitejs/plugin-react 配置 Vite;在 .env 填写 VITE_CLIENT_ID、VITE_DISCOVERY_ENDPOINT、VITE_REDIRECT_URI、VITE_SCOPE。需先收集 clientId、serverConfig.wellknown(须以 /.well-known/openid-configuration 结尾)、scope(须含 openid)、redirectUri。随后依次创建 constants.js、use-davinci.hook.js、form.jsx、各采集器组件、login.jsx、callback.jsx 并接入路由。也可运行 chmod +x scripts/scaffold_auth.sh 后执行 ./scripts/scaffold_auth.sh --target-dir src 复制模板。

适用场景:快速演示 DaVinci 认证、为已有 SPA 增加认证。限制:不适用于 PingAM/AIC(应使用 journey-client);凭据须用环境变量而非硬编码;具体收费、平台支持范围等资料暂未提供。