Authdog
  1. 使用说明
Authdog
  • 常见问题
  • 使用说明
    • 功能介绍
    • 云函数篇
    • 销售代理
    • 部署教程
    • 更新Authdog教程
    • 更新日志
  • 用户模式
    • 用户注册
      POST
    • 用户登录
      POST
    • 修改密码
      POST
    • 解绑设备
      POST
    • 充值/激活
      POST
    • 心跳请求
      POST
    • 扣减点数
      POST
    • 退出登录
      POST
  • 设备ID模式
    • 设备授权
      POST
    • 充值/激活
      POST
    • 获取设备信息
      POST
    • 扣减点数
      POST
  • 云变量
    • 通过ID获取云变量
      POST
    • 通过名称获取云变量
      POST
  • 云函数
    • 通过ID运行云函数
      POST
    • 通过名称运行云函数
      POST
  • 用户数据
    • 创建用户数据
      POST
    • 通过唯一值获取数据
      POST
    • 通过名称获取数据列表
      POST
    • 获取用户数据列表
      POST
    • 删除用户数据
      POST
    • 修改用户数据
      POST
  • 用户资产明细
    • 获取用户资产明细
  • 其他接口
    • TCP接口
    • 获取应用信息
    • 提交用户反馈
  • 加密和安全
    • 通讯加密
    • 请求路径加密
    • 应用安全
  1. 使用说明

云函数篇

云函数提供让服务器执行函数的能力#

目前支持三种类型的云函数
1.
虚拟机JS (VM-JS)
2.
NodeJS (NODE-JS)
3.
本机库函数 (NATIVE-LIB) .dll .so 等

JS云函数#

基础示例(虚拟机JS、NodeJS )
// js脚本示例代码,脚本不要过于复杂,脚本最大运行时间为3秒 且仅接受字符串传参和返回 最大支持10个参数
var arg1 = $0; // $0 是 传入的第一个参数
var arg2 = $1; // $1 是 传入的第二个参数
// ... 以此类推
var user = $getUser(); // 获取当前用户信息(设备模式下则获取当前设备信息)
$reduceUserBalance(100, '扣减原因'); // 扣减当前用户100点,异步的 无返回值 第一个参数为数量,第二个为原因

return "hello world"; // 返回给调用者的结果
云函数参数和返回值都只支持字符串,最大支持10个参数

获取参数#

$0 为第一个参数 $1 为第二个参数,以此类推

获取当前用户或设备信息#

$getUser()
该函数用于获取当前访问者的信息,如果应用是用户模式则返回user对象,具体属性可以查看登录接口中所返回的信息,如果应用是设备ID模式则返回device对象,具体属性可以查看设备授权返回的信息

扣减用户点数#

$reduceUserBalance(100, '扣减原因')
通过此函数可以扣减当前用户点数,第一个参数为扣减的次数,第二个参数为字符串原因
此函数不会返回任何信息,因为其是异步执行的,但是函数立即返回
注意
NodeJS类型云函数不支持$reduceUserBalance函数 (但可用高级用法实现)

本机库云函数#

本机库函数目前支持 windows 和 linux 平台。

约定#

windows 平台下使用 stdcall
linux 平台下使用 c call
被调用的函数必须导出
被调用的函数必须返回字符串 (char *)
被调用函数的参数数量应该至少有一个
默认情况下 函数第一个参数将接收一个json字符串,为当前用户信息(设备模式下则获取当前设备信息)
然后接下来的参数则是调用传入的参数
返回的字符串将用做云函数返回
注意
第一个参数 即 用户信息是utf8编码的字符串 返回信息和其他参数将在调用者和执行者之中不变的传递

生命周期#

本机库将会在第一次云函数调用时被加载,并且多个云函数使用同一个库不会重复加载
由于node.js的限制,每个线程都会加载一遍库
本机库将会在整个后台服务结束进程时才会销毁
📌
为避免调用本机库云函数造成node主线程阻塞,本机库云函数是运行在线程池中,你应该避免出现线程安全问题

NodeJS 云函数特性#

NodeJs云函数的js代码将被封装在一个async方法中,因此您可以在代码中使用await
NodeJs云函数可以访问网络

高级用法#

有时候你可能希望在云函数中扣减用户点数或者进行其他的操作,您可以在NodeJs和本机库云函数中使用后台的API接口来访问后台的全部功能,用以实现相关操作
详细见后台 账户->jwt令牌
修改于 2023-05-16 17:47:37
上一页
功能介绍
下一页
销售代理
Built with