从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之三 || Swagger的使用 3.1

简介: WHY 上文中已经说到,单纯的项目接口在前后端开发人员使用是特别不舒服的,那所有要推荐一个,既方便又美观的接口文档说明框架,当当当,就是Swagger,随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染、后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。
+关注继续查看

WHY

上文中已经说到,单纯的项目接口在前后端开发人员使用是特别不舒服的,那所有要推荐一个,既方便又美观的接口文档说明框架,当当当,就是Swagger,随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染、后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。 

前端和后端的唯一联系,变成了API接口;API文档变成了前后端开发人员联系的纽带,变得越来越重要,swagger就是一款让你更好的书写API文档的框架。

没有API文档工具之前,大家都是手写API文档的,在什么地方书写的都有,有在confluence上写的,有在对应的项目目录下readme.md上写的,每个公司都有每个公司的玩法,无所谓好坏。

书写API文档的工具有很多,但是能称之为“框架”的,估计也只有swagger了。 

 

HOW

下面开始引入swagger插件

方法有两个:

1)可以去swagger官网或github上下载源码,然后将源码(一个类库)引入自己的项目;

2)直接利用NuGet包添加程序集应用(这里就是前边说的 在以后的开发中,Nuget无处不在)。

右键项目中的 Dependencies -- > Manage Nuget Packags --> Browse --> Search "Swashbuckle.AspNetCore" --> Install

 

 

然后就在项目的Nuget依赖里看到刚刚引入的Swagger

 


图 2

这个时候,你可以试一下,当然是不可以的,还记得上文说的,.Net Core 都需要一个程序入口么,对就是Startup.cs文件

 

1、打开Startup.cs类,编辑ConfigureServices类

     public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            #region Swagger
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("v1", new Info
                {
                    Version = "v0.1.0",
                    Title = "Blog.Core API",
                    Description = "框架说明文档",
                    TermsOfService = "None",
                    Contact = new Swashbuckle.AspNetCore.Swagger.Contact { Name = "Blog.Core", Email = "Blog.Core@xxx.com", Url = "https://www.jianshu.com/u/94102b59cc2a" }
                });
            });

            #endregion

        }

 

2、编辑Configure类

    // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            #region Swagger
            app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiHelp V1");
            });
            #endregion

            app.UseMvc();
        }

 

3、到这,已经完成swagger的添加,F5 运行调试,在域名后面输入/swagger,http://localhost:54067/swagger/index.html 点击回车,当当当 出来啦


图 3

 


图 4

既美观又快捷,这样以后发布出去,前后端开发人员就可以一起开发了,嗯!不错!

WHAT

  好啦,本节基本就是这里了,你简单浏览后,会了解到,什么是Swagger,它如何创建使用,如何运行的,但是,细心的你会发现一些问题

 

NEXT

如何直接F5运行,首页无法加载?

接口虽有,但是却没有文字文档说明?

对于接口是如何加权限验证的?

如何发布到服务器,大家一起接口开发呢?

项目开发中的实体类是如何在Swagger中展示的?

让我们带着这些问题,继续浏览下一篇吧,Swagger 3.2 配置

ღ 网友反馈ღ

@BlueDr提出:可以将Swagger的UI页面配置在Configure的开发环境之中

       public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
                #region Swagger
                app.UseSwagger();
                app.UseSwaggerUI(c =>
                {
                    c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiHelp V1");
                });
                #endregion
            }


            app.UseMvc();
        }

 

 

CODE

https://github.com/anjoy8/Blog.Core.git

 https://gitee.com/laozhangIsPhi/Blog.Core

相关文章
|
1天前
|
自然语言处理 测试技术 C#
NSubstitute:一个简单易用、灵活多变的.NET单元测试模拟框架
NSubstitute是一个开源的.NET单元测试模拟类库,该框架设计的主要目标是提供一个简单明了、易用性强、贴近自然语言的模拟测试框架。它使得开发者能够专注于测试工作,而不是纠结于测试替代实例的创建和配置。
24 5
|
7天前
|
JavaScript 小程序 API
C#/.NET/.NET Core优秀项目和框架8月简报
C#/.NET/.NET Core优秀项目和框架8月简报
|
18天前
|
容器
.NET Core - 选项框架:服务组件集成配置的最佳实践
.NET Core - 选项框架:服务组件集成配置的最佳实践
|
18天前
.NET Core - 配置框架:让服务无缝适应各种环境
.NET Core - 配置框架:让服务无缝适应各种环境
|
19天前
|
开发框架 JSON Kubernetes
.NET Core配置框架及4种配置方式详解(下)
上一篇,我们学习了4种配置方式的内存配置和命令行配置方式,本篇,我们来学习另外2种方式:环境变量配置方式和文件提供程序方式。
.NET Core配置框架及4种配置方式详解(下)
|
19天前
|
存储
.NET Core配置框架及4种配置方式详解(上)
通过配置框架可以以不同的方式来配置不同环境下的服务,以使服务无缝适应各种环境。
.NET Core配置框架及4种配置方式详解(上)
|
1月前
|
开发框架 .NET C#
C#/.NET/.NET Core优秀项目和框架精选(坑已挖,欢迎大家踊跃提交PR或者Issues中留言)
C#/.NET/.NET Core优秀项目和框架精选(坑已挖,欢迎大家踊跃提交PR或者Issues中留言)
|
1月前
|
开发框架 前端开发 C#
探索.NET:跨平台开发的强大框架
在现代软件开发领域,.NET已经成为了一个备受瞩目的技术框架。它不仅在Windows平台上广泛应用,还在跨平台开发中展现出了强大的威力。本文将为您介绍.NET的基本概念、优势以及在不同领域的应用。
45 0
|
2月前
|
边缘计算 监控 负载均衡
推荐一款.NET开源的轻量级分布式服务框架
推荐一款.NET开源的轻量级分布式服务框架
|
2月前
|
开发框架 .NET 数据库
.net项目开发-EF框架解决添加默认值问题
.net项目开发-EF框架解决添加默认值问题
44 0
相关产品
云迁移中心
相关实验场景
更多
推荐文章
更多