首页 > 其他分享 >Lua云函数如何设置签名和时间戳校验(按键精灵、懒人精灵等任何语言均可调用)

Lua云函数如何设置签名和时间戳校验(按键精灵、懒人精灵等任何语言均可调用)

时间:2024-09-15 11:52:03浏览次数:3  
标签:10 width length 懒人 height Lua 按键精灵 Time 校验

Lua云函数工具如何设置签名校验以及时间戳验证

前景回顾→Lua云函数的对接和使用http://t.csdnimg.cn/pcIjS

添加过[ 签名校验 ] [ 时间戳验证 ] [ 数据加密 ]任意一项,项目颜色会变成橙色

点击[ 管理项目加密 ]按钮后会进入下方界面,这次的教程主要讲解如何进行[ 签名校验 ]以及[ 时间戳验证 ],数据加密会单独开一片文章进行讲解说明!

下方为示例的Lua云函数代码

-- 计算长方体的体积和表面积
function calculateCuboid(length, width, height)
    -- 计算体积
    local volume = length * width * height
    
    -- 计算表面积
    local surfaceArea = 2 * (length * width + width * height + height * length)
    
    -- 返回体积和表面积
    return {volume = volume, surfaceArea = surfaceArea}
end
 
return calculateCuboid(10,10,10)

正常情况下对接该云函数时的JSON

{
   "length": 10,
   "width": 10,
   "height": 10
}

时间戳验证:

如何开启时间戳验证:当值不为0时,则代表开启了时间戳验证

对接的JSON数据增加一个新的键名为[ Time ]

{
   "Time" : 1726371672,
   "length": 10,
   "width": 10,
   "height": 10
}
Lua语言通过 os.time() 函数进行获取
按键精灵通过 Time() 来获取

原理:(服务端获取当前服务器的秒级时间戳 - 您传来的Time时间戳) < 您设定的数值


签名校验:

若开启签名校验,则需要在JSON中添加一个新的键名[ Sign ],若您开启了签名校验,则必须传入一个 Time 时间戳,原因如下:

Sign = Md5(项目ID + 时间戳)

客户端需要获取到您传入的时间戳!

{
    "Sign":Md5(项目ID + 时间戳),
    "Time":1726371672,
    "length":10,
    "width":10,
    "height":10
}

服务端返回值中的签名:

{
  "Code": 200,
  "Result": 1256,
  "Time": 1726372624,
  "Sign": "f96d73669c9d73d102799bdee130dd14",
  "Run": {
    "LuaTake": 0,
    "Ram": 0
  }
}

服务器返回值中的 Sign = Md5(项目ID + 响应Code + 响应Time)

标签:10,width,length,懒人,height,Lua,按键精灵,Time,校验
From: https://blog.csdn.net/Y_ZSQ/article/details/142281955

相关文章

  • Lua云函数(按键精灵、懒人精灵等任何精灵或语言均可调用)
    Lua云函数安装视频教程>本教程不对安装进行讲解,仅教学如何创建以及对接!>[哔哩哔哩]https://b23.tv/Wam52Ty创建第一个Lua云函数项目一、点击[添加新的项目]按钮二、输入[项目名称]推荐使用英文三、进入到了[创建项目]界面,将Lua代码填入进去该......
  • 合宙Air201资产定位模组LuatOS课程:GPS/LBS/Wi-Fi定位
    已经推出3期课程啦:helloworld、点灯、远程控制,小伙伴们是不是收获满满,期待更高阶的应用呢?本期,我们将学习合宙Air201的核心功能之一——定位功能!Air201定位示例教程  合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放......
  • 合宙Air201模组LuatOS:点灯仪式
    上一期教程,我们学习了合宙Air201helloworld,很多小伙伴有了初步了解,接下来,推出第二篇:你将体验工程师的重要仪式——点灯!Air201点灯教程  合宙Air201资产定位模组——是一个集成超低功耗4G通信、语音通话、超低功耗定位、计步、震动、Type-C、充电、放音、录音等功能的超小PCBA。......
  • 合宙Air201模组LuatOS:远程控制
    很多小伙伴已经学习了前两期教程helloworld、点灯,对合宙Air201这款低功耗资产定位模组的LuatOS开发已有一定了解,大家的实操反馈是:真的很简单!那么,这一期我们要一起体验更有趣的——远程控制点灯!Air201远程控制点灯教程  合宙Air201资产定位模组——是一个集成超低功耗4G通信、语......
  • Lua闭包
    前提概念词法定界:当一个函数内嵌套另一个函数的时,内嵌函数可以访问外部函数的局部变量,这种特征叫做词法定界。第一类值:在Lua中,函数是一个值,它可以存在于变量中、可以作为函数参数,也可以作为返回值return。upvalue:内嵌函数可以访问外部函数已经创建的局部变量,这些局部变量......
  • 资产定位 | 合宙Air201模组LuatOS快速入门01-hello world
    合宙的Air201模组,功耗低,品质稳定,购买样品也方便,且资料全开放。问题是:用合宙的Air201模组,直接开发OpenCPU的应用,够方便吗?可以不用熟悉繁琐的环境搭建吗?可以不用关注繁琐的编译选项吗?可以不用关心繁琐的C语言陷阱吗?可以用寥寥几行代码,就完成模组对外设的控制,和服务器的......
  • Google Aviator Evaluator 使用入门(一)
    Aviator Evaluator 使用入门(一)https://www.yuque.com/boyan-avfmj/aviatorscript/tvahat一、什么是规则引擎定义:规则引擎是一种软件系统,用于执行基于规则的推理。它将业务规则与事实数据相结合,得出结论。组成:规则引擎通常由规则存储库、推理引擎、工作内存 3个部分......
  • nginx+lua配置
    nginx中可以配置`--lua校验配置location^~/lua/{default_type'text/html';access_by_lua_file/usr/local/nginx/conf/access.lua;}--重定向配置location^~/toRedirect/{proxy_passhttp://目标ip:目标端口/;proxy_set_headerHost$host;proxy_set_headerX-Re......
  • nginx安装Lua
    nginx安装lua支持步骤1、下载相关安装包(luajit、ngx_devel_kit、lua-nginx-module)wgethttps://github.com/LuaJIT/LuaJIT/archive/v2.0.4.tar.gzwgethttps://github.com/openresty/luajit2/archive/refs/tags/v2.1-20240626.tar.gzwgethttps://github.com/simpl/ngx_devel_......
  • 按键精灵输入通过数据录入数据代码例子
    Dima(560)a(0)="pkn2408290135-100"a(1)="pkn2408290135-101"a(2)="pkn2408290135-102"a(3)="pkn2408290135-103"a(4)="pkn2408290135-104"a(5)="pkn2408290135-105"a(6)="pkn2408290135-106"......