CN109791461A - 用于动态验证应用程序接口修改请求的交互式用户界面的方法和系统 - Google Patents
用于动态验证应用程序接口修改请求的交互式用户界面的方法和系统 Download PDFInfo
- Publication number
- CN109791461A CN109791461A CN201780043234.6A CN201780043234A CN109791461A CN 109791461 A CN109791461 A CN 109791461A CN 201780043234 A CN201780043234 A CN 201780043234A CN 109791461 A CN109791461 A CN 109791461A
- Authority
- CN
- China
- Prior art keywords
- programming code
- api
- user
- submitted
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
Abstract
一种用于将至少一部分编程代码动态验证为应用程序接口(API)修改请求的用户界面。第一窗口区域静态显示可操作地连接到API的请求的一个或多个可配置元素的数据定义。第二窗口区域显示根据所述请求的所述数据定义结构化的编程代码。所述第二窗口区域还接收来自用户的第一输入以修改所述可配置元素。响应于接收到所述第一输入,动态请求显示区域接收来自所述用户的指令以将所述编程代码提交到所述API以进行验证。提交的所述编程代码不像由所述API处理的完整交易请求那样完整。所述动态请求显示区域在所述编程代码提交之后基本上立即显示响应,且响应指示提交的所述编程代码是否有效。
Description
相关申请交叉引用
本PCT国际申请要求于2016年7月12日申请的美国非临时专利申请第15/208,442号的优先权,其公开内容以全文引用的方式并入本文中。
技术领域
本发明通常涉及数据元素验证。具体地说,本发明的各方面涉及动态验证部分完成的应用程序编程接口(application programming interface,API)的数据元素。
背景技术
在现代软件设计中,就算不是关键方面,与各种数据或服务提供商的互连性也是非常重要的。凭借因特网的便利性和开放性,软件程序产品在与其它装置或程序无广泛连接的情况下将不再可操作。在编程电平下,软件程序产品经由应用程序接口(API)与彼此进行通信,以在不同软件程序产品之间适当地,并且有时安全地交换数据。软件开发人员有时会创建特殊工具或“插件”,以利用经由API传达的数据向用户提供特殊特征。这些工具或“插件”通常需要创建为API所接受的对API的交易请求,以便充分利用API的功能。
因此,API设计师频繁发布描述API结构的手册、论文、教程。例如,图1和2中所示的API手册、论文,或教程通常列出在一列或一侧202中被API所接受的特定属性的名称,同时另一侧204示出实例。类似地,图2示出了窗口202和204中的另一种API教程,描述了开发人员将如何为API创建适当配置的请求或编程指令。图3A示出了另一种现有技术用户界面方法,其中用户请求窗格352被设置或配置成显示在响应窗格354上方。
因此,在开始对所需的API请求或指令进行译码之前,软件开发人员可以仔细检查这些静态列表、表格、图示、教程、实例等。
但是,当开发人员准备好将他们的请求或指令提交到API以确定请求或指令是否有效时,会出现长期存在的问题。很多时候,开发人员需要在提交前完成全部且完整的请求或指令,但验证响应不能提供除“成功”或“失败”反馈之外的详细报告。
如果响应是“失败”,这要求开发人员返回绘图板,尝试弄清其请求或指令的哪一部分失败了。例如,他们会再次查看API手册或教程,以确保他们的请求或指令符合所需的语法、属性限制、参数大小等。一旦他们再次确认请求正确,他们将再次提交以进行验证。此过程自身将进行重复,直到验证响应指示“成功”为止。
发明内容
本发明的各方面可以包含用户界面,用于将至少一部分编程代码动态验证为应用程序接口(API)修改请求。在一个实施例中,用户界面包含图形用户界面(graphical userinterface,GUI)。凭借将编程代码的一部分验证为应用程序接口(API)请求的能力,本发明的实施例可以显著减少开发人员在验证API的请求或指令方面的时间。此外,在不需要或独立于验证API的域知识的情况下,可以执行本发明的各方面的验证过程。
附图说明
通过参考结合附图考虑的详细描述可更好地理解本发明。图中的部件可能未必按比例绘制,而是侧重于示出本发明的原理。在图中,相同附图标号贯穿不同视图标示对应的部分。
图1、2,和3A示出现有技术实践;
图3B示出根据本发明的一个实施例的用于将编程代码的至少一部分动态验证为应用程序接口(API)请求的示例性用户界面;
图3C示出根据本发明的一个实施例的用于将编程代码的至少一部分动态验证为应用程序接口(API)请求的另一实施例;
图4示出根据本发明的一个实施例的将编程代码的至少一部分动态验证为应用程序接口(API)请求的流程图;
图5是适于本发明的各方面的便携式计算装置的图解;以及
图6是适于本发明的各方面的服务器计算装置的图解。
所属领域的一般技术人员可了解,为了简单和清晰起见而示出图中的元件,因此并未示出所有的连接和选项,以免模糊本发明的各方面。例如,可能通常不描绘在商业上可行的实施例中有用或必要的常见但很好理解的元件,以便有助于不大受妨碍地查看本公开的这些各种实施例。应进一步了解,可以特定的发生次序描述或描绘某些动作和/或步骤,而所属领域的技术人员应理解,实际上不要求此类有关顺序的特异性。还应理解,本文中所用的术语和表达可相对于其对应的相应查询和研究领域来进行定义,除非本文中另外阐述了特定含义。
具体实施方式
现可参考附图来更充分地描述本发明,附图形成本发明的一部分且以图解方式示出具体示范性实施例,本发明可通过所述实施例实践。可呈现这些图解和示范性实施例,且应理解,本公开是一个或多个发明的原理的范例,且可能并非意在将任何一个发明限制于所示出的实施例。本发明可以许多不同形式体现,且不应被理解为限于本文中阐述的实施例;实际上,提供这些实施例以使本公开透彻和完整,且将使本发明的范围完全传达到所属领域的技术人员。此外,本发明可体现为方法、系统、计算机可读媒体、设备或装置。因此,本发明可采取完全硬件实施例、完全软件实施例或组合软件和硬件方面的实施例的形式。因此,以下详细描述不应被视为是限制性的。
现在参考图3B,根据本发明的一个实施例的用于将编程代码的至少一部分动态验证为应用程序接口(API)请求的示例性用户界面300。在一个实施例中,用户界面300可以是图形用户界面(GUI)。在GUI的实施例中,用户(未示出)可以使用指示装置,例如鼠标来与用户界面300进行交互。在另一实例中,如果用户界面300可以显示在触敏的显示装置上,那么用户可以使用用户的手指或手写笔装置来与显示装置进行交互,以操作用户界面300。
在一个实施例中,用户界面300包含第一窗口区域302和第二窗口区域304。在一个实施例中,第一窗口区域302可以进一步划分成第一窗格302a和第二窗格302b。应理解,根据用户界面300的不同设计偏好,第一窗口区域302可以在不脱离本发明的范围或精神的情况下配置成子区段。例如,将第一窗口区域302与两个不同窗口区域,而不是第一窗格302a和第二窗格302b分离的设计选择仅仅是设计选择,而且不会产生功能差异。
在一个实例中,第一窗口区域302可以显示与第一窗格302a中的API架构或结构相关联的多个数据定义。例如,第一窗格302a可以显示API结构内的区段的列表。然后,响应于一个区段,例如图3B中所示的区段“支付API”314的选择,第二窗格302b可以进一步显示所述区段的细节。出于说明目的而不是限制,第二窗格302b可以显示以下信息:
货币
字符串=用于交易的货币
支付:
cardnumber
字符串=信用卡号
cardexpirationmonth
字符串=两位数到期月份
cardexpirationyear
字符串=四位数到期年份
cardtype
字符串=卡类型
应理解,第一窗格302a和/或第二窗格302b可以提供用户可以向上移动和向下移动第一窗格302a和/或第二窗格302b的滚动条控件,以查看可被显示装置框架遮蔽的内容。
在另一个实施例中,在第一窗口区域302中显示的内容可以是静态的。第一窗口区域302中的内容都是可用的,因为它们未经更新。用户可以选择第一窗格302a,例如标题为“支付API” 314的区段中所列项目中的一个或多个,以获得要在第二窗格302b中示出的选择的数据定义。在当前实例中,“支付API” 314包含参数数目、参数的数据类型、参数描述等的数据定义。除非第一窗口区域302的整个内容(例如,API结构或用户手册)接收更新,可以通知用户所述更新,否则第一窗格302a和第二窗格302b通常不会更改内容。
仍然参考图3B,在一个实施例中,第二窗口区域304可以基于第一窗口区域302以编程代码的形式显示附加信息。在一个实例中,响应于第二窗格302b中项目的选择,呈编程代码格式的一组可配置元素312显示在第二窗口区域304中。例如,响应于第二窗格302b中的“卡号”的选择,第二窗口区域304可以显示可配置元素312。在图3B中所示的实例中,用户可以提供可由第二窗口区域304接收的输入,以在第二窗口区域304中的可配置元素312中设置“4234090430233320”。在一个实施例中,第二窗口区域304中所示的编程代码可以符合XML、Javascript、JSON、REST API/SOAP/Web API等的规范。应理解,在不偏离本发明的范围或精神的情况下,可以使用其它类型的编程规范。
本发明的实施例可以提供工具或用户界面,以高效辅助软件开发人员更好地验证其提交给API的请求。每个API可包含API架构(父/子节点关系)、特定数据类型、到期日期格式、布尔类型值(例如,是0还是1、真或假、是或否),可选字段即使可用但也可能不隐藏,或数据的特征或相依性可能隐藏在手册/文档中,等。除非开发人员花费大量时间来仔细讨论或探索所有的可能性,否则开发人员在构建请求时不能验证API请求中的数据则效率会非常低。
在一个实施例中,第二窗口区域304可以将一个或多个可配置元素显示为第一窗口区域302中所选的数据定义的函数。例如,在显示的一个或多个可配置元素内,其中的一个或多个可以是所需或必要的参数。因此,在一个实施例中,这些所需参数可能变灰,并且自动填充有有效数据。在另一个实施例中,可配置元素中的其它可选参数可以突出显示以供用户选择,从而待在请求中进行验证。
用户界面300还可以包含动态请求显示区域306,其用于接收来自用户的指令以提交第二窗口区域304中示出的编程代码。在一个实施例中,动态请求显示区域306包含可供用户选择的发送请求按钮308和复位按钮310。此外,动态请求显示区域306还可以在用户选择发送请求后立即显示响应。例如,如果第二窗口区域304中的编程代码已经过验证,那么动态请求显示区域306可在短暂的延迟后或无显著延迟情况下几乎立即显示“成功”警报/通知。另一方面,如果第二窗口区域304中的编程代码未被验证,那么动态请求显示区域306可以在其中显示“失败”。本发明的各方面可以动态地显示响应(例如,响应于经提交以进行验证的编程代码,而不是在第二窗口区域304中所示的整组编程代码)。
在另一个实施例中,用户可能不需要选择发送请求按钮308来提交编程代码。例如,用户可以按键盘上的回车或返回以执行提交动作。在另一个实施例中,只要用户完成修改第二窗口区域304中示出的可配置元素时,就可提交编程代码以进行验证。
还预期用户可以通过在第一窗口区域302中选择更多数据定义而将附加的编程代码与可配置元素添加到第二窗口区域304。然而,不同于现有技术,第二窗口区域304中的编程代码不需要是对API的完整请求。提交以供验证的编程代码可能是部分完整或不完整的请求。
参考图3C中的又一个实施例,GUI 380示出了本发明的另一个方面。GUI 380可以包含窗格382,其可以包含一个或多个参数或配置设置以作为对API的请求的一部分。在一个实例中,作为请求的一部分,一些参数是所需或必要的。例如,如图3C所示,388可以指向API请求的一组所需或必要参数、配置设置或字段,使得用户能够进行控制或更改。图3C可以使用以较浅灰色显示这些设置或字段,以表示此类指示。应理解,可以实施其它显示方法,如在所需字段或设置旁边放置一个“*”,或者每当由用户控制的光标指定字段或设置时,提供悬停球体。
另一方面,存在可由用户配置、自定义或控制的字段或设置。在本实例中,390指向此类参数、字段或设置:“卡代码”。用户可以选择参数390旁边的复选框。在选择复选框之后,对应的编程代码可能会出现在窗格384中以进行认证或验证。窗格386可以显示验证或认证的结果。如上所述,可以实时或动态地响应于选择发送按钮而显示认证或验证的响应。
在另一个实施例中,用户可以熟悉编程语言译码语法,使得用户可便于在图3C中的窗格384中或图3B中的窗格304中直接输入代码。在这种实施例中,将自动选择、突出显示,或以其它方式指出图3C中的窗格382或图3B中的窗格302a或302b中对应的一个或多个参数、配置设置或字段以指示用户已选择或激活此类参数、设置或字段。
现在参考图4,流程图示出根据本发明的一个实施例的用于将编程代码的至少一部分动态验证为应用程序接口(API)请求的方法。
在一个实例中,所述方法在402处可以在显示器上显示包含静态数据定义的第一窗口区域。数据定义可以包含可操作地提交到API的请求的一个或多个可配置元素。在404处,所述方法还可包含接收第一窗口区域中第一静态数据定义的选择。在一个实例中,第一静态数据定义可以包含第一组可配置元素。在406处,所述方法可以在显示器上显示第二窗口区域,其包含响应于所选的第一静态数据定义而结构化的编程代码。在一个实例中,编程代码可以与第一组可配置元素一起显示。在408处,在一个实施例中,所述方法可以接收显示器上的第二窗口区域中来自用户的第一输入,以用于修改第一组可配置元素。
在410处,所述方法可以进一步接收动态请求显示区域中来自用户的指令。在412处,响应于从用户接收到的指令,所述方法可以将编程代码提交到API以进行验证。在一个实例中,提交的编程代码作为由API处理的交易请求并不完整。换句话说,提交的编程代码不是现有技术中提交的完整或结构完善的请求。本发明的实施例可以实现对作为全部或完整提交的一部分使用的编程代码的一部分(partial/portion)的验证。实现这种性质的提交可为开发人员提供更高效的开发例程。在另一个实施例中,在不需要或独立于验证API的域知识的情况下,可以执行本发明的各方面的验证过程。
在一个实施例中,在具有适当的域知识的情况下,用户可易于为所述域的API设计请求、例程、功能等。然而,在不理解API悖论的情况下,API的此类请求的质量可能不太高。本发明的实施例可评估所提交以进行验证的单个编程代码集,而不需要用户了解API的深入域知识。本发明的特征可使得实习生或初学者能够帮助开发人员中的其它主要团队成员快速而且准确地开发和部署API请求。
在414处,所述方法进一步可以在动态请求显示区域中显示响应。在一个实施例中,在提交编程代码之后,可以提供响应而无显著延迟。在另一个实施例中,可以立即提供响应。在另一个实施例中,响应可以指示提交的编程代码是对API有效还是提交的编程代码对API无效。
图5可以是便携式计算装置801的高级图解,所述便携式计算装置与远程计算装置841通信,但应用程序可通过多种方式存储和访问。另外,应用程序可通过多种方式,例如从应用程序商店、从网站、从商店Wi-Fi系统等获得。可存在各种版本的应用程序以利用不同计算装置、不同语言和不同API平台的益处。
在一个实施例中,便携式计算装置801可以是使用电池等便携式电源855操作的移动装置112。便携式计算装置801还可具有显示器802,所述显示器可以是或可以不是触敏显示器。更具体地,显示器802可具有电容传感器,例如,可用于向便携式计算装置801提供输入数据的电容传感器。在其它实施例中,例如箭头、滚轮、键盘等输入板804可用于向便携式计算装置801提供输入。另外,便携式计算装置801可具有可接受和存储口头数据的麦克风806、用以接受图像的相机808和用以传送声音的扬声器810。
便携式计算装置801能够与计算装置841或组成计算装置云811的多个计算装置841进行通信。便携式计算装置801能够通过多种方式进行通信。在一些实施例中,通信可以是有线的,例如通过以太网线缆、USB线缆或RJ6线缆进行通信。在其它实施例中,通信可以是无线的,例如通过Wi-Fi(802.11标准)、蓝牙、蜂窝通信或近场通信装置进行通信。通信可以针对计算装置841,或可通过例如蜂窝服务的通信网络102、通过因特网、通过专用网、通过蓝牙等进行。图6可以是构成便携式计算装置801的物理元件的简化图解,且图6可以是构成服务器型计算装置841的物理元件的简化图解。
图5可以是根据作为系统的部分进行物理配置的示例便携式计算装置801。便携式计算装置801可具有根据计算机可执行指令进行物理配置的处理器850。其可具有便携式电源855,例如可以再充电的电池。其还可具有声音和视频模块860,其辅助显示视频和声音且可在不使用时关闭以节约电力和电池寿命。便携式计算装置801还可具有易失性存储器865和非易失性存储器870。其可具有可以是单独电路或可以是处理器850的部分的GPS功能880。还可以存在输入/输出总线875,所述输入/输出总线将数据传送往返于各种用户输入装置,例如麦克风806、相机808和其它输入,例如,输入板804、显示器802和扬声器810等。其还可以通过无线或有线装置来控制与网络的通信。当然,这只是便携式计算装置801的一个实施例,而便携式计算装置801的数量和类型仅受到想象力的限制。
系统所带来的是更好的信息可在销售点提供给用户。信息可以是用户特定的,且可以被要求超过相关性阈值。因此,用户可做出更好的知情决策。所述系统不仅加速过程,还使用计算系统来达成更好的结果。
构成远程计算装置841的物理元件可进一步在图6中示出。在高级别下,计算装置841可包含数字存储装置,例如磁盘、光盘、闪存、非易失性存储装置等。结构化数据可存储在数字存储装置中,例如存储在数据库中。服务器841可具有根据计算机可执行指令进行物理配置的处理器1000。其还可具有声音和视频模块1005,其辅助显示视频和声音且可在不使用时关闭以节约电力和电池寿命。服务器841还可具有易失性存储器1010和非易失性存储器1015。
数据库1025可存储在存储器1010或1015中,或者可以是分开的。数据库1025还可以是计算装置841的云的一部分,且可跨越多个计算装置841以分布方式存储。还可以存在输入/输出总线1020,所述输入/输出总线将数据传送往返于各种用户输入装置,例如麦克风806,相机808,例如输入板804、显示器802和扬声器810等输入。输入/输出总线1020还可以通过无线或有线装置来控制与网络的通信。在一些实施例中,应用程序可位于本地计算装置801上,且在其它实施例中,应用程序可以是远程的841。当然,这只是服务器841的一个实施例,而便携式计算装置841的数量和类型仅受到想象力的限制。
要求保护的系统和方法可解决若干技术问题和挑战,已描述其中的一些问题和挑战。目前,在网络上输入潜在的敏感数据会使用户紧张,使得可能失去一次销售机会或可能接收不到省钱或省时的提示或优惠券。通过使用支付网络等专有网络发送潜在敏感数据,安全性可能更高,且用户可能更愿意加入附加的有益计划。类似地,对于一些用户来说,将数据从一个支付系统移到另一忠诚度系统感觉会有风险,但通过使用专有的受信任网络,可以更可信的方式传达数据。另外,格式化数据以及以多种附加程序可理解的方式传达数据是所述系统和方法已解决的技术挑战或问题。
本文描述的用户装置、计算机和服务器可以是:除了其它元件外还可具有(例如来自Intel Corporation、AMD或Motorola)的微处理器;易失性和非易失性存储器;一个或多个大容量存储装置(即,硬盘驱动器);各种用户输入装置,例如鼠标、键盘或麦克风;以及视频显示系统的通用计算机。本文描述的用户装置、计算机和服务器可在许多操作系统中的任何一个上运行,包含但不限于WINDOWS、UNIX、LINUX、MAC OS或Windows(XP、VISTA等)。然而,预期任何合适的操作系统均可用于本发明。服务器可以是网络服务器群集,其各自可基于LINUX并由负载均衡器支持,所述负载均衡器基于可用服务器的当前请求负载来决定网络服务器群集中的哪一个应处理请求。
本文描述的用户装置、计算机和服务器可经由网络通信,所述网络包含因特网、WAN、LAN、Wi-Fi、(现在已知的或在未来发明的)其它计算机网络和/或前述网络的任何组合。所属领域的技术人员在熟悉本说明书、附图和权利要求书后应理解,网络可通过有线和无线渠道的任何组合来连接各个部件,有线和无线渠道包含铜线、光纤、微波以及其它形式的射频、电通信技术和/或光学通信技术。还应理解,任何网络可通过不同的方式连接到任何其它网络。系统中计算机与服务器之间的互连是实例。本文描述的任何装置可经由一个或多个网络与任何其它装置通信。
在一个实施例中,远程计算装置841和便携式计算装置801可以执行图4中所示的示例性方法。
实例实施例可包含超出所示装置和网络的附加装置和网络。此外,描述为由一个装置执行的功能可分布且由两个或更多个装置执行。多个装置也可组合成单个装置,其可执行组合的装置的功能。
本文所描述的各种参与者和元件可操作一个或多个计算机设备以促进本文所描述的功能。上述图中的任何元件,包含任何服务器、用户装置或数据库可使用任何合适数目的子系统来促进本文所描述的功能。
本申请中描述的任何软件部件或功能可实施为可由至少一个处理器使用任何合适的计算机语言(例如Java、C++或Perl)、使用例如常规的或面向对象的技术执行的软件代码或计算机可读指令。
软件代码可作为一系列指令或命令存储在非暂时性计算机可读媒体上,所述非暂时性计算机可读媒体例如随机存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器或软盘等磁性媒体或CD-ROM等光学媒体。任何此类计算机可读媒体可驻存在单个计算设备上或内部,且可存在于系统或网络内的不同计算设备上或内部。
可理解,如上文所描述的本发明可通过使用模块或集成方式的计算机软件以控制逻辑的形式实施。基于本文中提供的公开内容和教示,所属领域的一般技术人员可知晓并了解其它方式和/或方法以使用硬件、软件或硬件与软件的组合来实施本发明。
以上描述是说明性的而不是限制性的。在所属领域的技术人员阅读了本公开之后,本发明的许多变化将变得显而易见。因此,本发明的范围不应参考上文的描述来确定,而是应参考待决的权利要求及其完整范围或等效物来确定。
在不偏离本发明的范围的情况下,任何实施例的一个或多个特征可与任何其它实施例的一个或多个特征组合。除非明确指示有相反的意思,否则“一”或“所述”的叙述旨在表示“一个或多个”。除非明确指示有相反的意思,否则“和/或”的叙述旨在表示所述术语的最具包含性的意义。
本发明系统的一个或多个元件可被要求保护为实现特定功能的构件。在使用此类手段加功能元件来描述要求保护的系统的某些元件的情况下,可查阅本说明书、附图和权利要求书的所属领域的技术人员应理解,对应的结构是通用计算机、处理器或微处理器,所述微处理器(视具体情况)被编程为使用在没有特殊编程的任何通用计算机中存在的功能来执行特别叙述的功能和/或通过实现一种或多种算法来实现所述功能。如所属领域的技术人员应理解,算法可在本公开中表达为数学公式、流程图、叙述式和/或向所属领域的技术人员提供足够的结构以实施所述过程和其等同物的任何其它方式。
虽然本公开可以许多不同的形式体现,但附图和讨论的呈现应理解为,本公开是一个或多个发明的原理的范例,并不意图将任何一个发明限制于所示实施例。
本公开为上文所描述的长期需要提供解决方案。具体地说,本文所述的系统和方法可以被配置用于改善与编辑,撰写,验证,或提交上文所描述的API请求相关联的用户图形界面(GUI)。所属领域的技术人员将易于想到上述系统和方法的其它优势和修改。因此,本公开在其更广方面并不限于上文示出和描述的具体细节、代表性系统和方法以及说明性实例。在不脱离本公开的范围或精神的情况下,可对上述说明书进行各种修改和变化,且希望本公开涵盖所有此类修改和变化,前提条件是它们在所附权利要求书和其等同物的范围内。
Claims (20)
1.一种用于将至少一部分编程代码动态验证为应用程序接口(API)请求的用户界面,包括:
第一窗口区域,其用于显示可操作地提交到API的请求的一个或多个可配置元素的静态数据定义;
第二窗口区域,其连接到所述第一窗口区域,用于显示根据所述请求的所述数据定义结构化的编程代码;
其中所述第二窗口区域被配置成接收来自用户的第一输入以修改所述一个或多个可配置元素;
响应于接收到所述第一输入,动态请求显示区域用于接收来自所述用户的指令以便将所述编程代码提交到所述API以进行验证,其中提交的所述编程代码与由所述API处理的完整交易请求相比并不完整;且
其中所述动态请求显示区域在所述编程代码提交之后基本上无延迟地显示响应,所述响应指示提交的所述编程代码是否为对所述API有效的所述完整交易请求的片段。
2.根据权利要求1所述的用户界面,其中所述第二窗口区域被进一步配置成接收来自所述用户的输入,以添加根据所述请求的附加数据定义结构化的附加编程代码。
3.根据权利要求1所述的用户界面,其中所述第一窗口区域被配置成经由指示装置接收对提供的所述数据定义中的一个的选择。
4.根据权利要求3所述的用户界面,其中响应于所述选择,所述第二窗口区域被配置成动态显示根据提供的所述数据定义中所选的一个数据定义结构化的另一组编程代码。
5.根据权利要求4所述的用户界面,其中所述第二窗口区域被配置成接收来自所述用户的第二输入,以修改所述另一组编程代码的一个或多个可配置元素,并且其中所述动态请求显示区域被配置成接收来自所述用户的另一指令,以将所述另一组编程代码提交到所述API以进行验证,其中提交的所述编程代码不像由所述API处理的所述交易请求那样完整。
6.根据权利要求1所述的用户界面,其中所述第一窗口区域被配置成显示所述API的架构,所述架构包含一个或多个结构化元素。
7.根据权利要求6所述的用户界面,其中所述第一窗口区域被配置成接收对所述架构的所述一个或多个结构化元素的选择,其中所述第二窗口区域被配置成显示一个或多个所选的结构化元素以由所述用户进行修改。
8.一种用于经由应用程序编程接口(API)动态验证部分交易请求的计算机化方法,包括:
在显示器上显示第一窗口区域,其包含包括可操作地提交到API的请求的一个或多个可配置元素的静态数据定义;
接收对所述第一窗口区域中的第一静态数据定义的选择,所述第一静态数据定义包含第一组可配置元素;
在所述显示器上显示第二窗口区域,其包含响应于所选的所述第一静态数据定义结构化的编程代码,所述编程代码显示所述第一组可配置元素;
接收所述显示器上的所述第二窗口区域中来自用户的第一输入,以修改所述第一组可配置元素;
接收动态请求显示区域中来自所述用户的指令;
响应于从所述用户接收到的所述指令,将所述编程代码提交到所述API以进行验证,其中提交的所述编程代码与由所述API处理的完整交易请求相比并不完整;以及
在所述编程代码提交之后在所述动态请求显示区域中基本上无延迟地显示响应,所述响应指示提交的所述编程代码是否为对所述API有效的所述完整交易请求的片段。
9.根据权利要求8所述的计算机化方法,还包括接收所述第一窗口区域中来自所述用户的所述静态数据定义的另一选择,并且其中显示所述第二窗口区域包括显示响应于所述第二窗口区域中的所述静态数据定义的接收到的另一选择而结构化的附加编程代码,所述附加编程代码包含第二组可配置元素。
10.根据权利要求8所述的计算机化方法,其中提交的所述编程代码包括所述API的所述部分交易请求。
11.根据权利要求8所述的计算机化方法,其中接收所述第一输入包括经由指示装置接收所述第一输入。
12.根据权利要求8所述的计算机化方法,其中提交的所述编程代码包括独立于指定所述API的域知识的编程代码。
13.根据权利要求9所述的计算机化方法,还包括接收所述显示器上的所述第二窗口区域中来自所述用户的第二输入,以修改所述第二组可配置元素。
14.根据权利要求13所述的计算机化方法,还包括:
接收所述动态请求显示区域中来自所述用户的第二指令;
响应于从所述用户接收到的所述第二指令,将所述附加编程代码与修改的所述第二组可配置元素一起提交到所述API以进行验证,其中所述附加编程代码不像由所述API处理的交易请求那样完整;以及
在所述编程代码提交之后在所述动态请求显示区域中基本上无延迟地显示第二响应,所述响应指示所述附加编程代码是否对所述API有效。
15.一种用于经由应用程序编程接口(API)动态验证部分交易请求的电子系统,包括:
处理器,其被配置成执行计算机可执行指令;
存储区域,其用于存储所述计算机可执行指令;
其中所述处理器被配置成执行所述计算机可执行指令以:
在显示器上提供显示第一窗口区域,其包含包括可操作地提交到API的请求的一个或多个可配置元素的静态数据定义;
经由输入接口从用户接收对所述第一窗口区域中的第一静态数据定义的选择,所述第一静态数据定义包含第一组可配置元素;
在所述显示器上显示第二窗口区域,其包含响应于所选的所述第一静态数据定义结构化的编程代码,所述编程代码显示所述第一组可配置元素;
经由所述输入接口接收所述第二窗口区域中来自所述用户的第一输入以用于修改所述第一组可配置元素;
响应于接收到的所述第一输入,将所述编程代码与修改的所述第一组可配置元素一起提交到所述API以进行验证,其中提交的所述编程代码相对于由所述API处理的完整交易请求并不完整;以及
响应于所述编程代码提交,在所述显示器上的动态请求显示区域中显示响应,所述响应指示提交的所述编程代码是否为对所述API有效的所述完整交易请求的片段。
16.根据权利要求15所述的电子系统,其中所述处理器被配置成执行所述计算机可执行指令,以用于接收对所述第一窗口区域中来自所述用户的所述静态数据定义的另一选择,并且其中所述处理器被配置成显示响应于所述第二窗口区域中的所述静态数据定义的接收到的另一选择而结构化的附加编程代码,所述附加编程代码包含第二组可配置元素。
17.根据权利要求16所述的电子系统,其中所述处理器被配置成接收所述显示器上的所述第二窗口区域中来自所述用户的第二输入,以用于修改所述第二组可配置元素。
18. 根据权利要求17所述的电子系统,其中所述处理器被进一步配置成执行所述计算机可执行指令以:
响应于从所述用户接收到的所述第二输入,将所述附加编程代码与修改的所述第二组可配置元素一起提交到所述API以进行验证,其中所述附加编程代码不像由所述API处理的交易请求那样完整;和
在所述编程代码提交之后,在动态请求显示区域中显示第二响应,所述响应指示所述附加编程代码是否对所述API有效。
19.根据权利要求15所述的电子系统,其中接收所述第一输入包括经由指示装置接收所述第一输入。
20.根据权利要求15所述的电子系统,其中提交的所述编程代码包括独立于指定所述API的域知识的编程代码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/208,442 US9996366B2 (en) | 2016-07-12 | 2016-07-12 | Method and system for an interactive user interface to dynamically validate application program interface modification requests |
US15/208442 | 2016-07-12 | ||
PCT/US2017/041405 WO2018013492A1 (en) | 2016-07-12 | 2017-07-10 | Method and system for an interactive user interface to dynamically validate application program interface modification requests |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109791461A true CN109791461A (zh) | 2019-05-21 |
Family
ID=60941065
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780043234.6A Pending CN109791461A (zh) | 2016-07-12 | 2017-07-10 | 用于动态验证应用程序接口修改请求的交互式用户界面的方法和系统 |
Country Status (5)
Country | Link |
---|---|
US (2) | US9996366B2 (zh) |
EP (1) | EP3485360B1 (zh) |
CN (1) | CN109791461A (zh) |
GB (1) | GB2567117B (zh) |
WO (1) | WO2018013492A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578741A (zh) * | 2019-09-27 | 2021-03-30 | 罗克韦尔自动化技术公司 | 用于工业自动化设备库的系统和方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11126406B1 (en) * | 2018-03-07 | 2021-09-21 | Intuit Inc. | Embedded application programming interface explorer |
CN110554882A (zh) * | 2019-08-27 | 2019-12-10 | 上海易点时空网络有限公司 | 代码管理方法及装置 |
CN112433727A (zh) * | 2020-12-10 | 2021-03-02 | 建信金融科技有限责任公司 | 一种用户界面配置方法、装置、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6243862B1 (en) * | 1998-01-23 | 2001-06-05 | Unisys Corporation | Methods and apparatus for testing components of a distributed transaction processing system |
US20060236327A1 (en) * | 2005-04-14 | 2006-10-19 | Credence Systems Corporation | GUI-based API for test systems |
CN101167045A (zh) * | 2005-04-01 | 2008-04-23 | 微软公司 | 用于应用程序窗口分组和管理的方法和装置 |
US20120266141A1 (en) * | 2011-04-13 | 2012-10-18 | Microsoft Corporation | Api descriptions |
CN103176793A (zh) * | 2011-11-15 | 2013-06-26 | 株式会社三丰 | 包含同步用户界面特征的机器视觉系统程序编辑环境 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658625B1 (en) * | 1999-04-14 | 2003-12-02 | International Business Machines Corporation | Apparatus and method for generic data conversion |
WO2003042823A1 (en) * | 2001-11-14 | 2003-05-22 | Exegesys, Inc. | Method and system for software application development and customizable runtime environment |
US7487515B1 (en) * | 2003-12-09 | 2009-02-03 | Microsoft Corporation | Programmable object model for extensible markup language schema validation |
US20070271506A1 (en) * | 2006-05-18 | 2007-11-22 | Steven Sholtis | Configurable information transmission |
US9483522B2 (en) * | 2013-03-07 | 2016-11-01 | Ricoh Company, Ltd. | Form aggregation based on marks in graphic form fields |
JP6119490B2 (ja) * | 2013-07-31 | 2017-04-26 | ソニー株式会社 | 光源装置、および表示装置 |
US9471283B2 (en) * | 2014-06-11 | 2016-10-18 | Ca, Inc. | Generating virtualized application programming interface (API) implementation from narrative API documentation |
-
2016
- 2016-07-12 US US15/208,442 patent/US9996366B2/en active Active
-
2017
- 2017-07-10 WO PCT/US2017/041405 patent/WO2018013492A1/en unknown
- 2017-07-10 GB GB1901904.1A patent/GB2567117B/en not_active Expired - Fee Related
- 2017-07-10 EP EP17828252.1A patent/EP3485360B1/en active Active
- 2017-07-10 CN CN201780043234.6A patent/CN109791461A/zh active Pending
-
2018
- 2018-05-31 US US15/993,896 patent/US10534622B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6243862B1 (en) * | 1998-01-23 | 2001-06-05 | Unisys Corporation | Methods and apparatus for testing components of a distributed transaction processing system |
CN101167045A (zh) * | 2005-04-01 | 2008-04-23 | 微软公司 | 用于应用程序窗口分组和管理的方法和装置 |
US20060236327A1 (en) * | 2005-04-14 | 2006-10-19 | Credence Systems Corporation | GUI-based API for test systems |
US20120266141A1 (en) * | 2011-04-13 | 2012-10-18 | Microsoft Corporation | Api descriptions |
CN103176793A (zh) * | 2011-11-15 | 2013-06-26 | 株式会社三丰 | 包含同步用户界面特征的机器视觉系统程序编辑环境 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112578741A (zh) * | 2019-09-27 | 2021-03-30 | 罗克韦尔自动化技术公司 | 用于工业自动化设备库的系统和方法 |
CN112578741B (zh) * | 2019-09-27 | 2024-01-02 | 罗克韦尔自动化技术公司 | 用于工业自动化设备库的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20180276011A1 (en) | 2018-09-27 |
GB201901904D0 (en) | 2019-04-03 |
EP3485360B1 (en) | 2023-09-27 |
GB2567117A (en) | 2019-04-03 |
EP3485360A4 (en) | 2019-07-31 |
WO2018013492A1 (en) | 2018-01-18 |
US20180018186A1 (en) | 2018-01-18 |
US9996366B2 (en) | 2018-06-12 |
EP3485360A1 (en) | 2019-05-22 |
US10534622B2 (en) | 2020-01-14 |
GB2567117B (en) | 2021-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107766940B (zh) | 用于生成模型的方法和装置 | |
CN109791461A (zh) | 用于动态验证应用程序接口修改请求的交互式用户界面的方法和系统 | |
US9721265B2 (en) | Systems and methods for generating adaptive surveys and review prose | |
EP3660854A1 (en) | Triage dialogue method, device, and system | |
CN104981774A (zh) | 背景控制面板配置选择的方法和系统 | |
CN107133816A (zh) | 一种电子书阅读控制方法和装置 | |
CN102982396A (zh) | 通用过程建模框架 | |
KR101956010B1 (ko) | 웹 사이트 제작 지원 서버 및 이에 의한 웹 사이트 제작 지원 방법 | |
US20240095255A1 (en) | System and method for creating and sharing bots | |
JPWO2019008853A1 (ja) | 提供装置、処理装置、情報処理方法、およびプログラム | |
JP2022500748A (ja) | カリキュラムパッケージの開発方法及び装置、システム、デバイス並びに記憶媒体 | |
US11797820B2 (en) | Data augmented training of reinforcement learning software agent | |
US20210027248A1 (en) | Non-linear and collaborative systems and methods for social good innovation | |
US20180169529A1 (en) | Sensor acquisition and analytics platform for enhancing interaction with adult devices | |
KR102557428B1 (ko) | 인공지능 기반 인테리어 커스터마이징 방법 | |
Deaky et al. | The First Android Client Application for the iLab Shared Architecture. | |
CN105743890A (zh) | 权限信息生成方法和装置 | |
US20160266874A1 (en) | Technology recommendation for software environment | |
Mita et al. | 15‐year educational experience on autonomous electronic information devices by flipped classroom and try‐by‐yourself methods | |
JP6924979B2 (ja) | 不動産情報検索装置、方法、及びコンピュータプログラム | |
CN108415983B (zh) | 一种基于交互的智能问题解决方法和装置 | |
WO2020008663A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
CN110879865A (zh) | 核身产品的推荐方法和装置 | |
KR20200139038A (ko) | 게임 의뢰자와 제작자 간을 중계하는 장치 및 방법 | |
KR101418680B1 (ko) | 로봇 동작용 콘텐츠 저작 툴을 갖는 지능형 단말기 및 이를 통한 로봇 동작용 콘텐츠 생성방법, 이를 이용한 로봇 동작용 콘텐츠 거래 기능의 커뮤니티 서비스 제공 시스템 및 그 방법 그리고 로봇 게임 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40004172 Country of ref document: HK |
|
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20220719 |