
# 自定义调用华为云Astro轻应用脚本的URL
华为云Astro轻应用支持将已启用的脚本，封装成一个新的URL地址，供第三方系统进行调用。
#### 自定义脚本的URL
1. 参考[登录华为云Astro轻应用应用设计器](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9004.html)中操作，登录应用设计器。
2. 在左侧导航栏中，选择"集成"。
3. 单击开放接口后的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894142676.png)，进入新建开放接口页面。
4. 设置接口参数，单击"保存"。 
   图1新建接口   
   ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001956533761.png "点击放大")
   表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（删除）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
      
   
   
5. 接口创建完成后，支持在线测试。 
   1. 在应用设计器的导航栏中，选择"集成"。
   
   2. 在开放接口中，将鼠标放在对应的接口上，单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001909475162.png)，选择"查看"，进入接口预览页面。
   
   3. 在接口预览页面，单击URL后的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894302580.png)。
      图2进入接口测试页面   
      ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001936102257.png "点击放大") 
   
   4. 单击"测试一下"，如果有输入参数，设置输入参数后，单击"执行"。 成功响应，表示接口调用成功。
      
   
   
   
   
 
