怎么建设自己的一个服务器网站/排名seo公司哪家好

怎么建设自己的一个服务器网站,排名seo公司哪家好,外贸公司做网站,电子商务网站建设规划书范文swagger api文档创建API文档后,将其提供给涉众很重要。 在理想情况下,此发布的文档将足够灵活以解决任何最后的更改,并且易于分发(就成本以及完成此操作所需的时间而言)。 为了使之成为可能,我们将利用我在…

swagger api文档

创建API文档后,将其提供给涉众很重要。 在理想情况下,此发布的文档将足够灵活以解决任何最后的更改,并且易于分发(就成本以及完成此操作所需的时间而言)。 为了使之成为可能,我们将利用我在上一篇文章中完成的详细介绍API文档创建过程的内容 。 结合使用Swagger UI模块和json中已发布的API文档,我们可以创建简单HTML文档,这些文档也可用于与API进行交互。

与Swagger UI集成

Swagger UI的开发者将其描述为HTML,Javascript和CSS资产的无依赖集​​合,可从与Swagger兼容的API动态生成漂亮的文档和沙箱。 由于Swagger UI没有依赖关系,因此您可以将其托管在任何服务器环境或本地计算机上。 话虽如此,让我们看一下如何将Swagger文档提供给Swagger UI。 作为HTML,CSS和JS的静态集合,我们可以将其拖放到我们的项目中,而无需修改我们的pom.xml或项目中的任何其他文件。 只需转到GitHub并下载最新文件即可。

完成后,唯一需要做的就是提供指向您的API列表的链接。 只需打开index.html并用您自己的默认API列表URL替换就可以了。 我的示例中的URL看起来像这样: http://[hostname]:[port]/SpringWithSwagger/rest/api-docs 。 保存此更改并部署应用程序和静态Swagger UI之后,您应该能够浏览API并与之交互。

API文档

根据我的示例,我可以通过以下URL http://localhost:8080/SpringWithSwagger/apidocs/访问我的文档(由于我选择的部署方法的性质)。 如您所见,Swagger UI仅使用以json格式发布的数据(先前已讨论)。 您会看到的第一件事是API列表,它使您可以浏览已发布的API的集合。

api列表

当您要浏览可用的操作时,只需单击一下所有简短说明的所有操作的彩色列表,即可知道接下来要导航到的位置。 颜色在整个清单中保持一致,并很好地补充了操作。

方法清单

当您找到所需的操作时,首先是获取所需信息的时间。 通过单击方法名称,将显示完整的方法说明以及参数和响应消息。 但是还有更多原因,因为您可以使用自己的API并测试您的方法。 提供所有必需的参数并点击“尝试一下!” 按钮,您可以检查您的应用程序服务器是否已启动并以预期的方式运行。 如果您的代码需要某种类型的文件上传(就像我的更新用户的头像逻辑一样),那么Swagger UI会提供方便的工具来使其尽可能地容易。

化身

即使您能够进行一些快速的即席测试或检查,此工具也绝对不适合应用程序测试。 它所做的只是以一种易于阅读的方式呈现API文档,如果您有需要的话,可以自己尝试该方法(以提高对文档的理解)。 我发现这很不错,因为您需要了解一下操作本身,并且它的可观察到的行为Swagger UI可以使您满意,如下所示。

方法测试

擅长的地方

我真的很喜欢Swagger处理文档的方式以及Swagger UI呈现文档的方式。 以下几点使Swagger非常适合我的API文档需求:

  1. 语言不可知
    • 在异构环境中工作或考虑将新语言和工具引入您的项目时,该资产具有极大的价值。
  2. 基于注释的文档
    • 批注将文档绑定到代码,以单个生命周期创建一个单元。 这使管理,发布和发布的整个过程变得更加容易,并允许进行自动化。
  3. 公开进行后期处理
    • 拥有json形式的中间步骤,允许开发人员将自定义脚本和转换器附加到流程中,以根据涉众的需求生成各种格式的文档,例如PDF或Word文档。
  4. 丰富的模块和组件生态系统
    • 如果浏览Swagger的可用模块和组件,您可能会惊讶于此工具花了多少时间。 那里有很多有用的组件,因此很有可能会找到您认为您的项目可能需要或受益的Swagger扩展。
  5. 外观精美的UI工具
    • 因为我在UI方面不是很有才华,所以我不必为如何创建,格式化,呈现和交付文档而烦恼,我感到非常高兴。 我只需要在源代码中提供相关信息即可。 框架负责其余的工作,而我很快就得到了及时的文档。 鉴于Swagger UI的性质,如果需要,可以很容易地向其添加自定义公司标识。
  6. 试试看! 选项
    • 小事总是让我开心。 但是我认为,对整个团队来说,在文档中整齐地打包此选项非常有益(例如,在需要的位置,需要的时间)。

不足之处

我不会假装这是灵丹妙药,适合所有解决方案。 当然,在某些情况下,此类工具不是首选。 考虑到它的年龄,仍然有一些事情需要增加/改进。 但重要的是要声明该项目仍在开发中,并且日趋流行。 话虽这么说,但我想指出一些我发现的问题,这些问题需要深入研究和其他工作。 在我的第一次尝试中,我将重点关注三个主要问题。

  1. 有条件访问某些模型参数
    • 根据您的需求(以及使用的Swagger版本),您可能会发现自己需要从Swagger UI和Swagger json隐藏某些模型参数。 但是,这比我预期的需要更多的工作,并且需要修改模型属性。 可以预期,随着Swagger及其相关组件的下一个主要版本的推出,情况会变得更好,但是在此之前,您不得不手动执行此操作。 如果您对如何实现此目标感兴趣,请查看我的下一篇名为Swagger的Spring Rest API –精调公开文档。
  2. 文件上传及相关字段
    • 您的某些API操作可能需要上传文件(例如我的头像更新方法)。 但是,要使操作细节看起来像我的示例中呈现的那样,需要一点点的手工工作和规范筛选。 要摆脱与此问题相关的不需要的参数,请查看我的下一篇名为Swagger的Spring Rest API –精调公开的文档,我将在此详细介绍此问题以及如何在此处显示结果。
  3. API模型和XML
    • Swagger声称它是json和XML的朋友。 在操作级别上肯定是正确的,但是,在模型表示方面,XML比json位居第二(由于与XML及其模式有关的技术复杂性)。 当前,Swagger UI中的所有API模型都显示为json实体(json和XML),这迫使我不要在ProductsEndpoint文档中声明响应类型(在我的SpringWithSwagger示例中,示例使用XML格式的端点)。 这是我尚未完全满意的解决方案,因此我有意选择在处理XML时不声明响应类型。

接下来是什么?

如果按照所有步骤进行操作,现在应该可以使用API​​文档/ API的沙箱。 在我的下一篇名为Swagger的Spring Rest API的文章中,我将展示如何使用Swagger来微调已发布的文档-微调公开的文档。 该微型系列中使用的代码在GitHub上发布,并提供了所有讨论的功能和工具的示例。 请享受!

翻译自: https://www.javacodegeeks.com/2014/11/spring-rest-api-with-swagger-exposing-documentation.html

swagger api文档

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

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

相关文章

nuxt解决首屏加载慢问题_一个 Node 脚本让你的前端项目加载速度飞起来

写在最前面我的原创什么声明变成什么鬼了……前言随着前端三大框架的盛行,越来越多的前后端分离项目在服务器上跑了起来,随之而来,开发者也慢慢发现了这种开发模式所带来的弊端,其中之一就是首屏加载速度特别慢,因为虽…

数据库连接配置tomcat_Tomcat到Wildfly:配置数据库连接

数据库连接配置tomcat该摘录摘自《 从Tomcat到WildFly 》一书,您将在其中学习如何将现有的Tomcat体系结构移植到WildFly,包括服务器配置和在其顶部运行的应用程序。 WildFly是完全兼容的Java Enterprise Edition 7容器,与Tomcat相比&#xf…

左值、右值、左值引用、右值引用

【导读】:本文主要详细介绍了左值、右值、左值引用、右值引用以及move、完美转发。左值和右值左值(left-values),缩写:lvalues右值(right-values),缩写:rvalues直接上官网…

wxpython界面切换_wxpython实现按钮切换界面的方法

本文实例为大家分享了wxpython按钮切换界面的具体实现代码,供大家参考,具体内容如下 #-*- coding:utf-8 -*- import wx class TestFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self,None,-1,u登陆,size(370,280),stylewx.MINIMIZE_BOX| wx.…

jboss 4.3.0_JBoss BPM Suite 6.0.3版本的5个实用技巧

jboss 4.3.0上周,红帽发布了JBoss BPM Suite的下一个版本,标记为6.0.3 ,已订阅的用户可以在其客户门户中使用。 如果您对本发行版中的新增功能感到好奇,请在客户门户网站上在线查看发行说明和其余文档 。 我们正在寻找一些简单的…

C 条件变量使用详解

condition_variable介绍在C 11中,我们可以使用条件变量(condition_variable)实现多个线程间的同步操作;当条件不满足时,相关线程被一直阻塞,直到某种条件出现,这些线程才会被唤醒。其主要成员函…

pannel添加的子窗体很大_超简单的地瓜粉焖子做法全解,零失败

总以为做焖子是一项很大的工程,如果朋友知道你会做焖子定会用惊叹的语气崇拜你,想多一项厨艺吗,想让家人吃上自己亲手做的焖子吗?使用艺琳农场的地瓜粉一定让你出手不凡的,超简单,往下看哦新手为了担心霍霍…

多线程队列的算法优化

【导读】:本文主要讲解多线程队列的优化。多线程队列(Concurrent Queue)的使用场合非常多,高性能服务器中的消息队列,并行算法中的Work Stealing等都离不开它。对于一个队列来说有两个最主要的动作:添加&am…

linux 文件大小_整理 | Linux下列出目录内容命令

IT服务圈儿有温度、有态度的IT自媒体平台来源:良许Linux(ID:liangxuxiansheng)在 Linux 中,有非常多的命令可以让我们用来执行各种各样的任务。当我们想要像使用文件浏览器一样列出一个目录下的内容时,大家第一时间想到的是 ls 命…

多线程程序中操作的原子性

0. 背景原子操作就是不可再分的操作。在多线程程序中原子操作是一个非常重要的概念,它常常用来实现一些同步机制,同时也是一些常见的多线程Bug的源头。本文主要讨论了三个问题:1. 多线程程序中对变量的读写操作是否是原子的?2. 多…

.net mvc actionresult 返回字符串_ASP.NET Core中的Action的返回值类型

在Asp.net Core之前所有的Action返回值都是ActionResult,Json(),File()等方法返回的都是ActionResult的子类。并且Core把MVC跟WebApi合并之后Action的返回值体系也有了很大的变化。ActionResult类ActionResult类是最常用的返回值类型。基本沿用了之前Asp.net MVC的那…

.jdeveloper_在JDeveloper 12.1.3中为WebSocket使用Java API

.jdeveloper介绍 最新版本的JDeveloper 12c(12.1.3.0)和WebLogic Server 12.1.3一起提供了一些新的Java EE 7功能。 其中之一是对用于WebSocket的JSR 356 Java API的支持。 实际上,从12.1.2.0版本开始就支持WebSocket协议(RFC 645…

为什么程序员需要关心顺序一致性,而不是 Cache 一致性?

本文所讨论的计算机模型是Shared Memory Multiprocessor,即我们现在常见的共享内存的多核CPU。本文适合的对象是想用C 或者Java进行多线程编程的程序员。本文主要包括对Sequential Consistency和Cache Coherence的概念性介绍并给出了一些相关例子,目的是…

canoco5冗余分析步骤_打造高性能的大数据分析平台

大数据时代,大数据的应用与挖掘,大数据的分析和决策,大数据在经济社会的运行轨道上发挥着愈来愈重要的作用。对于大数据分析,现在好多互联网金融公司和传统的商业银行、证券基金公司都非常看重。个个都想在大数据分析中获得重要信…

C 迭代器iterator的实现原理

在经典的设计模式中,有一种迭代器模式,定义为:提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。迭代器的主要优点如下:访问一个聚合对象的内容而无须暴露它的内部表示。遍历任务交由迭代器…

html如何在画布上加层,在Canvas中嵌套Html

大概是这样的,现在需要根据一下上传的图片以及一些输入生成图片。本来打算用imagemagick的,但是后来觉得这样前后端要搞两份不同的代码,然后imagemagick使用起来远没有canvas用起来顺手啊。So,最终决定就用Canvas搞定它了&#xf…

如何用illustrator做技术手册_做期货用什么技术指标分析?

来源:期汇股金作者:DC链接:做期货用什么技术指标分析?投资期货市场首先我们要有一套自己的技术分析,那么我们有什么样的技术指标分析最准确呢,没有最准确的技术指标,要看你运用的程度&#xff0…

根据字符串自动构造对应类

问题的起因是,我在做一个demo,有一个对象基类,以及一堆派生出的子对象,比如球体、立方体之类的对象。还有一个对象管理类,用于存储场景中的所有对象。那么在初始化的时候,代码是这么写的:class …

.sql文件如何执行_mysql:一条SQL查询语句是如何执行的?

本篇文章将通过一条 SQL 的执行过程来介绍 MySQL 的基础架构。首先有一个 user_info 表,表里有一个 id 字段,执行下面这条查询语句:select * from user_info where id 1;返回结果为:-------------------------------------------…

jooq和jdbc_在jOOQ之上构建的RESTful JDBC HTTP服务器

jooq和jdbcjOOQ生态系统和社区正在持续增长。 我们个人总是很高兴看到基于jOOQ构建的其他开源项目。 今天,我们非常高兴为您介绍BjrnHarrtell结合REST和RDBMS的一种非常有趣的方法。 BjrnHarrtell从小就是瑞典的程序员。 他通常在Sweco Position AB上忙于编写GIS系…