跳转到主要内容

概览

函数API提供用于调用和管理无服务器函数的端点。在云环境中,函数在Deno Subhosting上边界运行。在自托管(Docker)环境中,函数在本地Deno运行时中运行。

标头

对于经过身份验证的函数调用:
对于管理员端点:

调用函数

使用任何HTTP方法(GET、POST、PUT、PATCH、DELETE等)执行已部署的函数。服务器保留并将调用者的原始方法转发给函数运行时。
注意:函数调用使用/functions/{slug}(没有/api前缀),不是/api/functions/{slug}

路径参数

参数类型说明
slugstring函数slug标识符

请求正文

函数期望的任何JSON有效负载。

示例

响应

响应取决于函数返回的内容:

管理员端点

这些端点需要管理员身份验证。

列出所有函数

示例

响应


获取函数详情

示例

响应


创建函数

目前,InsForge仅支持在Deno环境中运行的JavaScript/TypeScript函数。

请求正文

字段类型必需说明
namestring函数的显示名称
codestringJavaScript/TypeScript代码
slugstringURL友好的标识符(如果未提供,则自动生成)
descriptionstring函数的说明
statusstringdraftactive(默认值:active

示例

响应


更新函数

请求正文

字段类型必需说明
namestring更新的显示名称
codestring更新的函数代码
descriptionstring更新的说明
statusstringdraftactiveerror

示例

响应


删除函数

示例

响应


函数代码结构

函数必须导出一个接收Request对象并返回Response的默认异步函数:

访问请求数据


函数状态

状态说明
draft函数已保存但未部署
active函数已部署并可以调用
error函数有部署错误

错误响应

找不到函数(404)

函数不活跃(404)

执行错误(502)

当函数运行时无法到达时(自托管:本地Deno运行时宕机;云端:子托管代理失败):

函数运行时错误(500)

当函数代码抛出错误时:

Slug已存在(409)

检测到危险代码(400)