如何使用 Bittly 为基于 HTTP 的 API 快速创建 UI 操作界面

news2024/11/15 8:56:23

在开发 Web 应用或服务时,通常会提供不同数量的 API 接口给客户端或其他第三方使用, 当 API 数量达到一定数量的时候,在处理接口间的调用链以及参数关系时就会变得异常麻烦。 在这种情况下便可通过 Bittly 的面板功能将这些 API 结构进行组装整理起来组成一个 UI 控制面板, 从而能够更加方便快捷的使用和测试 API 接口。

在这里插入图片描述

准备

在开始之前,您需要安装最新版本的 Bittly, 您可以在 Bittly 官网 进行下载适合您系统的 Bittly 版本。

场景

假设我们的系统是一个电商平台,我们希望仅仅通过 API 调用来实现以下操作流程:

  • 用户登录
  • 用户购买商品
  • 变更订单状态为已发货
  • 变更订单状态为已收货

创建面板

在创建面板之前,我们需要在 Bittly 的指令管理模块中将所有需要用到的接口管理起来, 这样我们便可以面板中引用这些接口, 例如:

在这里插入图片描述

指令录入完成后,我们切换到控制面板模块,在顶部工具栏中点击 + 创建按钮即可新建一个空白的控制面板, 例如:

在这里插入图片描述

面板创建完成后便处于编辑模式用于对面板进行编辑操作, 我们可以通过右侧设置栏中的组件列表中,将我们需要的组件拖拽到面板中, 例如,我们拖拽一个按钮到面板中 :

在这里插入图片描述

接着,我们需要在按钮点击时调用用户登录接口,则我们需要先选中按钮, 然后在右侧设置栏中配置按钮点击事件处理器为调用指令, 例如:

在这里插入图片描述

现在我们使用指令默认配置,不修改任何参数, 点击确定保存该配置。 然后切换到面板运行模式点击该按钮测试以下运行情况。

在这里插入图片描述

如果我们希望在登录的时候能够任意输入账号和密码, 那么我们可以在面板中增加两个输入框来输入账号和密码,并且在点击登录按钮时自动引用这两个输入框中的值后再进行发送, 例如:

在这里插入图片描述

配置完成后, 我们需要在点击登录按钮时将账号密码改为引用值, 例如:

在这里插入图片描述

再次切换到运行模式, 我们在输入框中输入账号密码,并点击登录按钮,即可发送自定义的参数内容。

在这里插入图片描述

使用变量保存登录信息

在登录成功后,我们需要将获取到的 Access Token 保存起来以便后续接口使用, 这个时候我们就需要使用到变量来实现该功能。 变量的功能是在面板运行时提供临时保存数据的方式, 变量可在面板中的任何位置使用, 例如指令参数模板, 脚本或者自定义函数中使用。

首先,我们先新建一个变量 AccessToken 用于保存登录后获取到的 token :

在这里插入图片描述

然后,我们需要将登录接口的 API 响应内容中的 access token 解析到变量中 :

在这里插入图片描述

解析变量时,将响应解析模式选择 HTTP,在选择解析数据来源为 Body,解析格式为 JSON, 然后就可以根据属性路径来配置解析规则。

例如, 假设响应内容如下 :

{
    "success" : true,
    "message" : "OK",
    "data" : {
        "token" : "12345678-1234-1234-1234-1234567890AB"
    }
}

则使用路径 data.token 便可以访问到数据值 12345678-1234-1234-1234-1234567890AB 并赋值给变量 AccessToken

这样,我们在登录完成后, access token 便会被自动赋值到 AccessToken 变量中, 我们切换到运行模式来测试一下:

在这里插入图片描述

在获取到 access token 之后,我们便可以应用到下单接口中。 同样我们添加一个输入框用于填写商品ID, 一个数值输入框用于填写数量, 最后增加一个按钮用于提交订单。 则我们的面板配置如下:

在这里插入图片描述

由于订单 ID 后续需要使用到, 所以我们同样用一个变量来保存,我们在提交订单的接口配置如下:

在这里插入图片描述

再次切换到运行模式运行 :

在这里插入图片描述

使用下拉选项方便参数输入

当输入参数为固定列表中的某一个选项时, 我们可以不通过输入框来进行数据输入,而是通过下来选项组件实现, 从而减少输入操作并防止输入错误, 以变更订单状态为例:

在这里插入图片描述

同使用输入框一样, 在接口发送时我们同样可以采用下拉框中的值来发送选中的值。

在这里插入图片描述

面板运行

当面板配置完成后,我们切换到运行模式来运行该面板:

在这里插入图片描述

结束

Bittly 提供了一种高效的方式,通过可视化面板快速管理和测试基于 HTTP 的 API。您可以通过拖拽组件的方式,将各类 API 操作组织成易用的 UI 界面,如登录、下单、变更订单状态等常见操作。同时,Bittly 支持在面板中通过输入框、下拉框等组件传递动态参数,甚至可以利用变量保存并复用关键数据(如 Access Token)。这一功能大大简化了 API 调用的复杂性,减少了手动输入错误,并提升了操作效率,使得开发和测试过程更加直观流畅。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2163491.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue3的生命周期有哪些

vue3的生命周期:1、beforecreate;2、created;3、beforemount;4、mounted;5、beforeupdate;6、updated;7、beforedestroy;8、destroyed;9、activated;10、deac…

洛谷-P5461 赦免战俘(Java递归)

题目背景 借助反作弊系统,一些在月赛有抄袭作弊行为的选手被抓出来了! 题目描述 样例 #1 样例输入 #1 3样例输出 #1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 1 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1…

【机器学习】过拟合与欠拟合——如何优化模型性能

【机器学习】过拟合与欠拟合——如何优化模型性能 1. 引言 在机器学习中,模型的表现不仅依赖于算法的选择,还依赖于模型对数据的拟合情况。过拟合(Overfitting)和欠拟合(Underfitting)是模型训练过程中常…

黑马智数Day4-1

新增月卡 配置路由完成跳转 {path: /cardAdd,component: () > import(/views/car/car-card/add-card) }<el-button type"primary" click"$router.push(/cardAdd)">添加月卡</el-button> 车辆信息表单验证 <el-form :model"carInf…

自定义安装WSL和WSL迁移到指定位置

安装 WSL 到指定磁盘 配置环境 打开控制面板&#xff0c;找到程序–>右击启用或关闭Windows功能 向下滑动&#xff0c;找到“适用于Linux的Windows子系统”和“虚拟机平台”两个选项&#xff0c;勾选上&#xff0c;然后重启电脑 安装Ubuntu20.04 1. 下载发行版 打开链接…

全能通人工智能的能力评估框架-Levels of AGI: Operationalizing Progress on the Path to AGI

译自’Levels of AGI: Operationalizing Progress on the Path to AGI’&#xff0c;有所删节.笔者能力有限&#xff0c;敬请勘误。 摘要 Google DeepMind提出一种针对通用人工智能 (Artificial General Intelligence, 简称AGI) 框架&#xff0c;该框架用于评估AGI的模型及早期…

CAPL—on signal到底该怎么玩?

总结&#xff1a;一个前提&#xff0c;两种形式&#xff0c;一个注意&#xff0c;外加一个很不常用的知识点 1&#xff1a;一个前提&#xff1a;必须是DBC或其他数据库文件中定义的信号&#xff0c;且这个数据库已经添加到工程中去了。 2&#xff1a;使用格式 on signal&…

如何修改音频的音量增益

一、前言 在开发音频相关的功能&#xff08;比如说语音通话、播放音乐&#xff09;时&#xff0c;经常会遇到音量太小的问题&#xff0c;这时候就需要我们对原始数据进行处理。本文将介绍如何通过修改原始音频数据来增加增益&#xff0c;本文包含如下内容&#xff1a; 1.音频数…

3D Slicer医学图像全自动AI分割组合拳-MONAIAuto3DSeg扩展

3D Slicer医学图像全自动AI分割组合拳-MONAIAuto3DSeg扩展 1 官网下载最新3D Slicer image computing platform | 3D Slicer 版本5.7 2 安装torch依赖包&#xff1a; 2.1 进入安装目录C:\Users\wangzhenlin\AppData\Local\slicer.org\Slicer 5.7.0-2024-09-21\bin&#xff0…

PostgreSQL技术内幕12:PostgreSQL事务原理解析-锁管理

0.简介 本文介绍PG中的锁技术&#xff0c;主要包括PG中两阶段锁的介绍和PG中各种不同级别的锁&#xff0c;死锁问题介绍&#xff0c;以及如何去查看锁。 1.PG中两阶段锁 1.1 需要锁机制的原因 PG中的隔离性是通过MVCC和两阶段锁实现的&#xff0c;有了MVCC为什么还要使用悲…

python全栈学习记录(十八)re、os和sys、subprocess

re、os和sys、subprocess 文章目录 re、os和sys、subprocess一、re1.正则字符2.正则表达式的使用3.group的使用4.贪婪匹配与惰性匹配5.其他注意事项 二、os和sys1.os2.sys 三、subprocess四、打印进度条 一、re python中的re模块用来使用正则表达式&#xff0c;正则就是用一系…

基于Springboot企业员工人事管理系统JAVA|VUE|SSM计算机毕业设计源代码+数据库+LW文档+开题报告+答辩稿+部署教+代码讲解

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…

研一上课计划2024/9/23有感

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、需要认真上课的1.应用数理统计&#xff08;开卷考试&#xff09;2.最优化方法&#xff08;开卷考试&#xff09;3.跨文化交际&#xff08;主题演讲20课堂讨…

基于SpringBoot和Vue的餐饮管理系统

基于springbootvue实现的餐饮管理系统 &#xff08;源码L文ppt&#xff09;4-078 第4章 系统设计 4.1 总体功能设计 一般个人用户和管理者都需要登录才能进入餐饮管理系统&#xff0c;使用者登录时会在后台判断使用的权限类型&#xff0c;包括一般使用者和管理者,一…

手写SpringMVC(简易版)

在上一篇博客中说到这里我们要进行手写SpringMVC&#xff0c;因此最好是将上一篇博客中的SpringMVC源码分析那一块部分搞懂&#xff0c;或者观看动力节点老杜的SpringMVC源码分析再来看这里的书写框架。 首先我们要知道对于一个完整系统的参与者&#xff08;即一个完整的web项…

Spring Cloud :Hystrix实现优雅的服务容错

目录 Hystrix概述&#xff1a;第一个Hystrix程序步骤1&#xff1a;创建父工程hystrix-1步骤2&#xff1a;改造服务提供者步骤3&#xff1a;改造服务消费者为Hystrix客户端&#xff08;1&#xff09;添加Hystrix依赖&#xff08;2&#xff09;添加EnableHystrix注解&#xff08;…

共享单车轨迹数据分析:以厦门市共享单车数据为例(六)

副标题&#xff1a;.基于POI数据的站点功能混合度探究——以厦门市为例 为了保证数据时间尺度上的一致性&#xff0c;我们从互联网上下载了2020年的POI数据&#xff0c;POI数据来源于高德地图 API平台,包括名称、大小类、地理坐标等。并将高德地图 POI数据的火星坐标 系 GCJ-0…

轻松搭建企业报修平台,零代码解决方案

在当今竞争激烈的商业环境中&#xff0c;企业的高效运营离不开稳定的设备和设施。而当设备出现故障时&#xff0c;一个高效的维修报修平台就显得至关重要。那么&#xff0c;如何零代码搭建企业内部维修报修平台呢&#xff1f; 一、明确需求与目标 在搭建维修报修平台之前&…

Apache APISIX学习(2):安装Grafana、prometheus

一、Grafana安装 1、介绍 Grafana 是一个监控仪表系统&#xff0c;它是由 Grafana Labs 公司开源的的一个系统监测 (System Monitoring) 工具。它可以大大帮助你简化监控的复杂度&#xff0c;你只需要提供你需要监控的数据&#xff0c;它就可以帮你生成各种可视化仪表。同时它…

day01——通过git进行管理项目

新建仓库 IDEA新建本地仓库&#xff0c;并上传本地代码将代码上传到远程仓库 不同版本的idea&#xff0c;方式不同&#xff0c;自行摸索