创建空白AstroZero脚本
服务编排和脚本一样,都是完成业务接口和逻辑开发的,服务编排是图形化的,适用于业务逻辑比较简单的场景,而对于业务逻辑比较复杂的场景,您可以通过在线开发TypeScript脚本实现。本章节以创建一个全新的脚本为例,向您介绍如何在低代码平台中新建一个脚本。本脚本实例不涉及对象及调用接口等内容,脚本只实现请求“http://www.example.com”,返回网站请求的消息头功能。
创建空白脚本
- 参考登录AstroZero新版应用设计器中操作,登录应用设计器。
- 在左侧导航栏中,选择“逻辑”。
- (可选)单击脚本后的,为脚本添加目录。
脚本默认存放在根目录下,在创建脚本前,您可以先创建脚本存放的目录,也可以在脚本创建后将其拖拽到指定目录。
- 将鼠标放在已创建的脚本目录上,单击,进入新增脚本页面。
如果未创建脚本目录,请直接单击脚本后的,进入新增脚本页面。
- 选择“创建一个新脚本”,设置脚本名称(如httpTest),单击“添加”,进入脚本编辑器页面。
图1 新增httpTest脚本
表1 新增脚本参数说明 参数
说明
名称
在输入框中,输入新建脚本的名称。命名要求如下:
- 长度不能超过63个字符,包括前缀命名空间的长度。
须知:
名称前的内容为命名空间,在AstroZero中为了避免不同租户间数据的重名,租户在首次创建应用时需要先定义一个命名空间。一个租户只能创建一个命名空间,创建后不支持修改。
- 必须以英文字母开头,只能由英文字母、数字或单下划线组成,没有连续的下划线,且不能以下划线结尾。
模板
根据实际需求,在下拉框中选择脚本的模板。
- 空脚本:创建一个空脚本。
- 示例服务脚本:对外提供服务的脚本,可通过restful直接调用。
- 示例内部脚本:是内部库代码,只能被其它脚本import使用。
- 空白测试脚本:创建一个空测试脚本。
- 示例前置/后置安装脚本:在安装或升级应用时,在导入实例化配置数据之前或者之后执行的脚本。一般用于预清理数据、删除和更新数据等。
- 示例自定义接口前置脚本/后置脚本:在开放低代码平台的服务编排、脚本或者操作对象数据接口给第三方系统调用时,通过该示例脚本可实现在第三方系统配置这些接口的访问权限。
默认值:空脚本。
描述
根据实际需求,输入脚本的描述信息。
取值范围:1~255个字符。
- 长度不能超过63个字符,包括前缀命名空间的长度。
- 在脚本编辑器中,将以下脚本代码粘贴到代码编辑区。
import * as http from 'http' // 导入http库 let client = http.newClient() // 实例化 let resp = client.get("https://www.example.com/")// 请求网址 console.log(resp.headers) // 打印返回headers
- 单击页面上方的,保存脚本。
- 运行测试脚本。
- 单击编辑器上方的,执行脚本。
- 在页面底部单击测试窗口右上角的,返回消息头信息。
0603 10:39:22.569|debug|vm[731]>>> Build #AppCube Core 24.3.0 amd64 Built on 2024-05-08 09:54:09 Commit #fbbb0cef14 0603 10:39:22.571|debug|vm[731]>>> node: 4 0603 10:39:22.573|debug|vm[731]>>> script: BJ4__httpTest__1.0.1 0603 10:39:22.574|debug|vm[731]>>> locale: zh_CN 0603 10:39:22.576|debug|vm[731]>>> os timezone: Local 0603 10:39:22.578|debug|vm[731]>>> user timezone: (GMT+08:00) China Standard Time (Asia/***) 0603 10:39:22.580|debug|vm[731]>>> organization timezone: (GMT+08:00) China Standard Time (Asia/***) 0603 10:39:22.581|debug|vm[731]>>> load module http 0603 10:39:24.934|debug|vm[731]>>> { Date: [ Mon, 03 Jun 2024 02:39:24 GMT ], Set-Cookie: [ __cf_bm=mZCsDLBaFW9LYtwZSHdNG7lmfqWg7eiREVGkzxP0I5M-1717382364-1.0.1.1-kxYJgrTmCAQyj7kla1aazwY6lz3QSL9R98.v_HQCdYQqw2m.zkmxYpDhenoCTFxpfMLpzhrpiPT1eCdhqEgduw; path=/; expires=Mon, 03-Jun-24 03:09:24 GMT; domain=.squadhelp.com; HttpOnly; Secure; SameSite=None ], Vary: [ Accept-Encoding ], Server: [ cloudflare ], Content-Type: [ text/html; charset=UTF-8 ], X-Frame-Options: [ SAMEORIGIN ], Referrer-Policy: [ same-origin ], Cache-Control: [ max-age=15 ], Expires: [ Mon, 03 Jun 2024 02:39:39 GMT ], Cf-Ray: [ 88dc50043f2e5355-LAX ] } (BJ4__httpTest.ts:4) 0603 10:39:24.936|debug|vm[731]>>> resource limit usage: number of RequestSOQLQueriesAmount: 0 number of RequestSOQLRowsAmount: 0 number of RequestSOSLQueriesAmount: 0 number of RequestSOSLRowsAmount: 0 number of RequestDMLStatementsAmount: 0 number of RequestDMLRowsAmount: 0 number of RequestCallOutsAmount: 1 number of RequestEmailSendsAmount: 0 number of RequestEventSendsAmount: 0
- 脚本测试完成后,单击页面上方的,启用该脚本。
脚本启用后,即可在其他脚本、服务编排等操作中使用。如果脚本未启用,其他组件无法查询到该脚本,查询时会报错该脚本不存在或未启用。