25 lines
1.2 KiB
Plaintext
25 lines
1.2 KiB
Plaintext
# -*- coding: utf-8 -*-
|
|
# demo/api/hotload.dspy —— W-07d 脚本保存热加载(语法校验通过即生效)
|
|
# 入参: session_id(必填), script_id(必填), script_name(可选), script_type(可选 python/expr), script_content(必填)
|
|
try:
|
|
if not params_kw.get('session_id') or not params_kw.get('script_id'):
|
|
return {"status": 400, "message": "session_id/script_id 不能为空"}
|
|
if not params_kw.get('script_content'):
|
|
return {"status": 400, "message": "script_content 不能为空"}
|
|
data = await hotload_script(
|
|
session_id=params_kw.get('session_id'),
|
|
script_id=params_kw.get('script_id'),
|
|
script_name=params_kw.get('script_name', ''),
|
|
script_type=params_kw.get('script_type', 'python'),
|
|
script_content=params_kw.get('script_content'),
|
|
)
|
|
return {"status": 200, "data": data}
|
|
except DemoParamError as e:
|
|
return {"status": 400, "message": str(e)}
|
|
except DemoNotFoundError as e:
|
|
return {"status": 404, "message": str(e)}
|
|
except DemoStateError as e:
|
|
return {"status": 400, "message": str(e)}
|
|
except Exception as e:
|
|
return {"status": 500, "message": "hotload_script 内部错误: %s" % e}
|