React 组件
在 React 应用中使用 OpenBait
OpenBait 提供 React 组件,方便在 React 应用中集成反钓鱼防护。
安装
npm install @openbait/react
基础用法
import { OpenBaitProvider, usePhishingDetection } from '@openbait/react'
function App() {
return (
<OpenBaitProvider apiKey="your_api_key" domain="example.com">
<YourApp />
</OpenBaitProvider>
)
}
function LoginForm() {
const { isPhishing, check } = usePhishingDetection()
const handleSubmit = async (e) => {
e.preventDefault()
const safe = await check()
if (!safe) {
alert('检测到安全风险')
return
}
// 继续登录逻辑
}
return (
<form onSubmit={handleSubmit}>
{isPhishing && <div className="warning">警告:检测到钓鱼风险</div>}
{/* 表单字段 */}
</form>
)
}
组件 API
<OpenBaitProvider>
| 属性 | 类型 | 必填 | 描述 |
|---|---|---|---|
apiKey | string | 是 | API Key |
domain | string | 是 | 保护的域名 |
children | ReactNode | 是 | 子组件 |
usePhishingDetection()
返回值:
| 属性 | 类型 | 描述 |
|---|---|---|
isPhishing | boolean | 是否检测到钓鱼 |
isLoading | boolean | 检测中 |
check | () => Promise<boolean> | 手动触发检测 |
result | object | 详细检测结果 |
内置警告组件
import { PhishingWarning } from '@openbait/react'
function App() {
return (
<OpenBaitProvider apiKey="..." domain="...">
<PhishingWarning />
<YourApp />
</OpenBaitProvider>
)
}