Skip to content
页面梗概

助力生态可持续发展

赞助 Fresns 发展

成为赞助者

基础功能

校验签名

php
\FresnsCmdWord::plugin('Fresns')->verifySign($wordBody)
参数名类型是否必传说明
platformIdNumberYES平台编号(配置表 platforms 键名的键值)
versionStringYES语义化版本号
appIdStringYESApp ID
timestampNumberYES签名生成时间(当前 Unix 时间戳,精确到秒或毫秒都支持)
signStringYES请求签名
aidStringNO/YES账号参数(账号主表 accounts > aid 字段)
uidNumberNO/YES用户参数(用户主表 users > uid 字段)
tokenStringNO/YES身份凭证(传参时,联动 aid 或 uid 也需传参)

校验 URL 签名

php
\FresnsCmdWord::plugin('Fresns')->verifyUrlSign($wordBody)
参数名类型是否必传说明
urlSignStringYES参见:为插件生成签名
逻辑说明

用户将通过 URL 访问插件页面,URL 中会传参签名信息,用于一键登录。

  • 1、先使用 URL Encode 解码 {urlSign} 变量名的值,得到 base64 加密字符串
  • 2、再使用 base64 解密字符串,得到 json object 格式的 header 数据(包括 MD5 签名)
    • 可以留空或不传的参数:langTagtimezoneuiddeviceInfo
    • uid 不传,则表示为账号身份登录。
  • 3、获取 headers 中生成签名的信息,校验签名是否正确,正确则 code 为 0
  • 4、无论是否正确,都输出 headers 信息,格式见下方结果示例。
结果示例
json
{
    "code": 0,
    "message": "ok",
    "data": {
        "platformId": 4,
        "version": "1.0.0",
        "appId": "qe12345",
        "timestamp": 1626426833,
        "sign": "d5db4371a0c2d7e17009dea8d53ecf15a7ec07b9",
        "langTag": "zh-Hans",
        "timezone": "+8",
        "aid": "6a3bb3bc",
        "uid": 782622,
        "token": "6a3bb3bcdd4b75b1f852a0ef",
        "deviceInfo": ""
    }
}

上传交互日志

php
\FresnsCmdWord::plugin('Fresns')->uploadSessionLog($wordBody)
参数名类型是否必传说明
typeNumberYES记录类型
platformIdNumberYES平台编号(配置表 platforms 键名的键值)
versionStringYES语义化版本号,例如: 2.0.0
langTagStringNO语言标签
pluginUnikeyStringNO插件 Unikey
aidStringNO账号
uidNumberNO用户
objectNameStringYES功能模型名或者接口路径
例如模型名 App\Models\Post
例如接口路径:/api/v2/account/login
objectActionStringYES行为描述,自定义输入内容
objectResultNumberYES1.未知或执行中 / 2.成功 / 3.失败
objectOrderIdStringNO例如发表行为,则代表发表内容的 ID
插件行为,凭此 ID 可查询对应插件那边记录的关联信息
deviceInfoObjectNO交互设备信息
deviceTokenStringNO交互设备 Token
例如 iOS Device Token 或 Android Device Token
可应用于推送消息
moreJsonObjectNO其他自定义信息

发送验证码

php
\FresnsCmdWord::plugin('Fresns')->sendCode($wordBody)
参数名类型是否必传说明
typeNumberYES类型:1.邮件验证码 / 2.短信验证码
accountStringYES账号(邮箱或手机号)
countryCodeNumberNO国际区号(手机号专用)
templateIdNumberYES验证码模板 ID
langTagStringYES语言标签
验证码模板 ID
栏目标题发信编号
通用验证码1
注册新账号2
修改账号资料3
更换新绑定4
重置登录密码5
重置支付密码6
使用验证码登录7

核对验证码

php
\FresnsCmdWord::plugin('Fresns')->checkCode($wordBody)
参数名类型是否必传说明
typeNumberYES类型:1.邮件验证码 / 2.短信验证码
accountStringYES账号(邮箱或手机号)
countryCodeNumberNO国际区号(手机号专用)
verifyCodeStringYES验证码