开发者社区> 问答> 正文

宜搭远程api如何连接第三方api,并获取嵌套数值渲染到表单相应的位置

请教

展开
收起
游客mliyreeepeppo 2023-04-25 10:22:58 918 0
来自:钉钉宜搭
2 条回答
写回答
取消 提交回答
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    在阿里云宜搭中,您可以通过连接第三方 API 来获取数据,并将获取到的嵌套数值渲染到表单的相应位置。具体步骤如下:

    1. 打开宜搭设计器,选择需要渲染数据的表单组件,例如文本框或者表格。

    2. 在表单组件的数据绑定设置中,选择“远程 API”作为数据源,并填写第三方 API 的 URL 地址和参数信息。

    3. 在第三方 API 返回的数据中,找到需要渲染到表单的嵌套数值,并使用宜搭设计器提供的数据映射功能将其映射到表单的相应位置。例如,您可以使用“点选映射”或者“路径映射”来获取嵌套数值,并将其渲染到文本框或者表格的单元格中。

    4. 保存表单设置,并预览表单效果。如果一切正常,您应该能够从第三方 API 中获取到数据,并将其嵌套数值渲染到表单的相应位置。

    2023-04-25 22:43:21
    赞同 展开评论 打赏
  • 十年摸盘键,代码未曾试。 今日码示君,谁有上云事。

    你这个有点类似在宜搭内调用外部服务,外部服务对数据做额外的逻辑处理后,再将数据更新至宜搭的指定数据实例中。

     你可以在服务端定义外部接口,外部服务方法参考如下:

    package com.example.demo.controller;

    import com.alibaba.fastjson.JSON; import com.example.demo.util.GatewayRequestUtil; import com.example.demo.model.GatewayResult; import org.springframework.web.bind.annotation.*;

    import java.util.HashMap; import java.util.Map;

    @RestController @RequestMapping("/yida") public class YIDAController {

        /**      * 请求接口地址      */     public static final String UPDATE_FORM_DATAS = "/yida_vpc/form/updateFormData.json";

        @PostMapping("/updateFormDatas")     public String updateFormDatas(@RequestParam String appType,                                   @RequestParam String systemToken,                                   @RequestParam String userId,                                   @RequestParam String formInstId,                                   @RequestParam String updateFormDataJson) {

            GatewayResult result = null;         try {             Map<String, String> param = new HashMap<String, String>();             param.put("appType", appType);             param.put("systemToken", systemToken);             param.put("userId", userId);             param.put("formInstId", formInstId);             param.put("updateFormDataJson", updateFormDataJson);

                result = GatewayRequestUtil.baseRequest(param, UPDATE_FORM_DATAS);

                System.out.println(updateFormDataJson);             System.out.println(result);

                return JSON.toJSONString(result);         } catch (Exception e) {             e.printStackTrace();         }         return "error";     } }

    通过代码可知服务端拿到了宜搭侧传入的参数,再取相关参数作为宜搭数据更新接口的入参,调用宜搭实例更新接口。

    部署并上线该服务 从代码中得知该接口地址为:${域名/服务器地址}/yida/updateFormDatas

    在宜搭内配置第三方服务回调,将外部服务的接口地址以及接口入参配置上。

    参考上述代码示例,方法定义模块,该接口需要以下几个参数。

    public String updateFormDatas(@RequestParam String appType,                                   @RequestParam String systemToken,                                   @RequestParam String userId,                                   @RequestParam String formInstId,                                   @RequestParam String updateFormDataJson) { return true; }

    在宜搭内注册服务时,也需要将对应参数配置上,参考文档:服务注册

    在表单内配置表单提交时,触发该服务回调

    提交表单进行验证,查看「接受更新」表单内指定的数据实例

    根据数据管理页内的数据结果可以得知,服务链路已通。宜搭侧将数据传到外部服务端,服务端拿到数据后做逻辑处理,再调用宜搭数据更新实例接口更新「接受更新」表单内指定实例的数据。

    以上仅供参考,实际应用根据自己的情况调整。

    2023-04-25 10:53:59
    赞同 1 展开评论 打赏
问答分类:
问答地址:
关联地址:
相关产品:
来源圈子
更多
收录在圈子:
+ 订阅
「宜搭」是云钉原生低代码平台(钉钉 PaaS - aPaaS),让企业应用搭建更简单! 帮助中小企业降本提效,加强组织的数字化自主权; 帮助大型企业释放个体创新力,助力组织创新涌现。
相关文档: 宜搭
问答排行榜
最热
最新

相关电子书

更多
Spring Boot2.0实战Redis分布式缓存 立即下载
CUDA MATH API 立即下载
API PLAYBOOK 立即下载