CloseMaxscript 用户手册 前置动作示例,云控开关

注意:前置代码需要自行保证绝对能够正常运行,若语法或者运行时出错,将永远返回True(即可以正常执行原始代码)

使用前置动作实现云控开关

--这个函数必须返回true或者false
--注意如果这个脚本语法或运行错误,将返回true
fn test =
(
--每次发布你需要修改这里的版本号
version = "1.0"
stopFlag = version + ":stop"
--假设这是从网页获取到的内容
html = "1.0:stop"
if findString html stopFlag != undefined then
(
print "这个版本不能在用了,请升级"
return false
)
else
(
return true
)
)
test()

操作场景演示:
现在是2021年5月,你发布你工具 version = "1.0"
到了2021年6月,你准备发布 version = "2.0",于是你在网页服务里面禁用了1.0版本,你需要加网页内加上 1.0:stop 这样的内容(具体内容你可以自行定义协议),
因为网页的内容是随时可变的,所以你可以随时修改

补充

cmxs内置一些api

-- 注意 CodeContainer 这个变量只能在前置动作中使用,如果在其他地方使用可能会得到其他插件的信息,因为他是公共的变量
--获取当前脚本的唯一id,返回字符串
CodeContainer.guid
-- get请求网页服务
url = "https://www.baidu.com"
timeOut = 3000 --超时时间,毫秒,注意尾数必须为0,如果不为0,比如 3001,则请求方式为异步,异步你无法得到结果
result = CodeContainer.MaxScriptRunTime.CE879B6DF2CM url timeOut
html = result[4] --返回请求网页的html内容,类型为字符串
stateCode = result[1] --返回请求状态码,类型为字符串
errorMsg = result[2] --返回请求错误消息,类型为字符串
--post multipart/form-data 提交数据
url = "http://127.0.0.1:10010/Hello"
args = #("name","myname", "age","23")
timeOut = 5 * 1000
http = CodeContainer.MaxScriptRunTime.CBBEB4103FAM url args timeOut
posted @   trykle  阅读(66)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示