跳转至

脚本开发 / 函数页面 DFF.FUNC_PAGE

DFF.FUNC_PAGE() 用于返回自动生成的简单函数调用页面,适合将少量 Func 组合成操作页,不必单独开发前端页面。

示例

在被 @DFF.API(...) 装饰的 Func 中返回页面对象即可:

示例
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
@DFF.API('问候')
def greeting(name='World'):
    return f'Hello, {name}!'

@DFF.API('Func Page')
def func_page():
    page = DFF.FUNC_PAGE()
    page.set_title('My Func Page')
    page.add_html('h1', 'My Func Page', color='#409EFF', bold=True)
    page.add_func(greeting, default_kwargs={'name': 'User'})
    page.add_split()
    page.add_space(20)
    return page

func_page 创建函数 API 后,通过浏览器打开即可访问。页面样式可能随 DataFlux Func 版本更新。

func-page.png

API

方法 说明
page = DFF.FUNC_PAGE() 创建页面对象;标题默认为当前 Func 标题
page.set_title(title) 设置页面标题
page.add_html(tag, text=None, indent=None, space=None, color=None, bold=False, italic=False, style=None, buttons=None) 添加 HTML 块及可选样式和按钮;tag 可为 h1pspanhr
page.add_func(func, default_kwargs=None) 添加可调用 Func 块及可选默认参数
page.add_split() 添加分隔块
page.add_space(size=10) 添加垂直间距

add_func(...)func 参数和 buttons 中每个按钮的 func 都可以是 Func ID,也可以是经 @DFF.API(...) 装饰的函数。default_kwargs 必须与目标 Func 的参数保持一致。

渲染响应时,Func 块和按钮会从已发布 Func 元数据中解析。未知或未发布的 Func ID 无法解析,并可能使页面渲染失败,因此每个引用的 Func 都必须已经发布。

返回页面会授予临时调用能力

页面包含可调用 Func 时,系统会创建一个仅限已解析 Func ID 的临时浏览器授权 Token。只能将页面访问者确实应该执行的 Func 加入页面,并将返回该页面视为授予临时调用能力。

style、按钮数据和显示文本都属于页面内容,不得插入不可信 HTML 或秘密值。复杂交互页面应返回自行实现的 HTML,或配合资源文件使用。