自定义调用华为云Astro轻应用脚本的URL
华为云Astro轻应用支持将已启用的脚本,封装成一个新的URL地址,供第三方系统进行调用。
自定义脚本的URL
- 参考登录华为云Astro轻应用应用设计器中操作,登录应用设计器。
- 在左侧导航栏中,选择“集成”。
- 单击开放接口后的 ,进入新建开放接口页面。 ,进入新建开放接口页面。
- 设置接口参数,单击“保存”。
     
     图1 新建接口  表1 新建接口参数配置 参数 说明 标签 输入新建接口的标签,用于在页面展示。 标签取值范围:1~64个字符。 操作名称 输入新建接口的操作名称。命名要求如下: - 长度范围为1~40个字符。
- 名称必须以英文字母开头,只能由英文字母、数字或单下划线组成,且不能以下划线结尾。
 版本 URL对应的版本号,如1.0.0。 URL 新URL地址,其中“/service”是固定值,其次是“/App名称/版本号”,剩下部分请自定义。 自定义的URL需要符合一定规则,规则如下: - 必须以单个“/”开头。
- 可以配置多级路径,两个或者多个“/”之间必须有内容。
 内容类型 请求中的body类型,支持如下三大类: - application/json
- multipart/form-data
- binary-data
 “multipart/form-data”和“binary-data”用于文件上传接口,选择该内容类型,只能调用POST类型的脚本。 默认值:application/json。 分类 根据实际需求,输入新建接口的分类。 取值范围:1~255个字符。 描述 根据实际需求,输入新建接口的描述信息。 取值范围:1~255个字符。 允许匿名访问 是否可匿名访问运行环境中,该API接口。勾选表示允许匿名访问,通过运行环境子域名访问此接口时,如果无有效的Token认证信息,则以匿名用户身份继续访问此接口,且不需要做CSRF校验。匿名用户的权限为“Anonymous User Profile”,请确保该权限具备访问该接口的业务权限凭证或者相关资源权限。例如,当该接口有配置业务权限凭证时,给“Anonymous User Profile”权限添加相应业务权限凭证,即可通过运行环境子域名匿名访问该接口。 例如:登录业务应用接口“login”的URL为“/service/命名空间__MyApp/1.0.0/login”,运行环境子域名为“test.example.com”,期望可匿名访问该自定义接口,则配置接口时请勾选“允许匿名访问”,且“Anonymous User Profile”权限配置了该接口的业务权限凭证,则匿名用户通过“https://test.example.com/service/命名空间__MyApp/1.0.0/login”即可访问该接口。 设置匿名访问时,应遵循以下几项要求: - 需要支持匿名访问自定义接口的账号,必须要设置运行环境子域名。
- 带有合法认证信息来访问允许匿名访问的自定义接口时,优先以合法认证的身份权限来访问。
- 匿名用户身份访问自定义接口,不需要做CSRF校验。
- 不论以什么方式来访问, 认证身份后做的权限校验保持一致。如果配置了业务权限凭证,还是会查看用户权限是否配置相应业务权限凭证。
 类型 选择新建接口的类型。 - 服务编排:表示该定义URL调用的接口类型是服务编排。
- 脚本:表示该定义URL调用的接口类型是脚本。
- 对象:表示该定义URL是操作对象数据,包括对象数据的增删改查。
 默认值:服务编排,本示例配置为“脚本”。 自定义响应 是否需要格式化调用该URL后,返回的响应消息。如果勾选,表示对响应消息进行格式化,删除resCode、resMsg、result外层信息,只透传返回的消息。 - 不勾选“自定义响应”,返回如下响应消息 
            { "resCode": "0", "resMsg": "成功", "result": [ { "equipments": [ { "createdBy": "aaa", "createdBy.__objectType": "User" }, { "createdBy": "aaa", "createdBy.__objectType": "User" } ], "total": "2" } ] }
- 勾选“自定义响应”后,只返回如下响应消息 
            { "equipments": [ { "createdBy": "aaa", "createdBy.__objectType": "User" }, { "createdBy": "aaa", "createdBy.__objectType": "User" } ], "total": "2" }
 资源 选择调用的服务编排、脚本或操作的对象名称。 对象操作 请选择具体的操作,“类型”选择“对象”时,该参数才会显示。 - Insert Record:新增对象数据。
- Update or Insert Record:更新或新增对象数据。
- Update By ID:按记录ID,更新对象数据。
- Delete By ID:按记录ID,删除对象数据。
- Query By ID:按记录ID,查询对象数据。
- Update By Condition:按条件,更新对象数据。
- Delete By Condition:按条件,删除对象数据。
- Query By Condition:按条件,查询对象数据。
 方法 映射后调用的方法名,如GET(查询)、PUT(增加)、POST(修改)和DELETE(删除)。 
- 接口创建完成后,支持在线测试。
 
   
    

