ASP.NET Web API +Swagger创建与汉化生成 API说明文档

1.首先引入下面一个NuGet包

 

 

2.安装

 

 

 3.安装完成后App_Start文件夹下出现SwaggerConfig.cs

 

 

 

4.右键项目属性

    在项目属性的生成项中勾选输出XML文档

 

在Web选项中,启动操作勾选特定页,输入swagger/ui/index#/   这一步不是必须的,也可以不用。根据自己的习惯

 

 

5.配置SwaggerConfig.cs   把多余的绿色注释删掉,省的碍眼,去掉后简洁,便于阅读

 

6.创建js文件把下面代码拷贝进去保存即可,这一步是为了汉化,切记要嵌入资源,不然显示不了汉化,我本地测试是这样
右键这个js文件属性,并做嵌入的资源 js代码如下: 

 

 

'use strict';

/**
 * Translator for documentation pages.
 *
 * To enable translation you should include one of language-files in your index.html
 * after <script src='https://www.cnblogs.com/xinhuawei/p/lang/translator.js' type='text/javascript'></script>.
 * For example - <script src='https://www.cnblogs.com/xinhuawei/p/lang/ru.js' type='text/javascript'></script>
 *
 * If you wish to translate some new texsts you should do two things:
 * 1. Add a new phrase pair ("New Phrase": "New Translation") into your language file (for example lang/ru.js). It will be great if you add it in other language files too.
 * 2. Mark that text it templates this way <anyHtmlTag data-sw-translate>New Phrase</anyHtmlTag> or <anyHtmlTag data-sw-translate value='New Phrase'/>.
 * The main thing here is attribute data-sw-translate. Only inner html, title-attribute and value-attribute are going to translate.
 *
 */
window.SwaggerTranslator = {
    _words: [],

    translate: function () {
        var $this = this;
        $('[data-sw-translate]').each(function () {
            $(this).html($this._tryTranslate($(this).html()));
            $(this).val($this._tryTranslate($(this).val()));
            $(this).attr('title', $this._tryTranslate($(this).attr('title')));
        });
    },

    _tryTranslate: function (word) {
        return this._words[$.trim(word)] !== undefined ? this._words[$.trim(word)] : word;
    },

    learn: function (wordsMap) {
        this._words = wordsMap;
    }
};


/* jshint quotmark: double */
window.SwaggerTranslator.learn({
    "Warning: Deprecated": "警告:已过时",
    "Implementation Notes": "实现备注",
    "Response Class": "响应类",
    "Status": "状态",
    "Parameters": "参数",
    "Parameter": "参数",
    "Value": "值",
    "Description": "描述",
    "Parameter Type": "参数类型",
    "Data Type": "数据类型",
    "Response Messages": "响应消息",
    "HTTP Status Code": "HTTP状态码",
    "Reason": "原因",
    "Response Model": "响应模型",
    "Request URL": "请求URL",
    "Response Body": "响应体",
    "Response Code": "响应码",
    "Response Headers": "响应头",
    "Hide Response": "隐藏响应",
    "Headers": "头",
    "Try it out!": "试一下!",
    "Show/Hide": "显示/隐藏",
    "List Operations": "显示操作",
    "Expand Operations": "展开操作",
    "Raw": "原始",
    "can't parse JSON.  Raw result": "无法解析JSON. 原始结果",
    "Model Schema": "模型架构",
    "Model": "模型",
    "apply": "应用",
    "Username": "用户名",
    "Password": "密码",
    "Terms of service": "服务条款",
    "Created by": "创建者",
    "See more at": "查看更多:",
    "Contact the developer": "联系开发者",
    "api version": "api版本",
    "Response Content Type": "响应Content Type",
    "fetching resource": "正在获取资源",
    "fetching resource list": "正在获取资源列表",
    "Explore": "浏览",
    "Show Swagger Petstore Example Apis": "显示 Swagger Petstore 示例 Apis",
    "Can't read from server.  It may not have the appropriate access-control-origin settings.": "无法从服务器读取。可能没有正确设置access-control-origin。",
    "Please specify the protocol for": "请指定协议:",
    "Can't read swagger JSON from": "无法读取swagger JSON于",
    "Finished Loading Resource Information. Rendering Swagger UI": "已加载资源信息。正在渲染Swagger UI",
    "Unable to read api": "无法读取api",
    "from path": "从路径",
    "server returned": "服务器返回"
});


$(function () {
    window.SwaggerTranslator.translate();
    window.SwaggerTranslator.setControllerSummary();
});

 

7.ok,完成。穿上丝袜哥的效果如下

 

在通往幸福道路上,并没有什么捷径可走,唯有付出努力和拼搏

推荐这些文章:

Swagger (API框架,API 文档 与API 定义同步更新)

1.依赖

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.7</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
...

swagger在线API文档配置

package com.sjaco.lccloud.provider.olsim.config;

import com.github.xiaoymin.knife4j.spring.extension.OpenApiExtensionResolver;
import com.google.common.collect.Lists;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.spri...

ASP.NET Core 使用Swagger生成在线api文档

参考:
基本用法: https://www.cnblogs.com/yilezhu/p/9241261.html
加token授权:https://www.cnblogs.com/shenghuotaiai/p/12551268.html
整合后调通,上代码:
Controller:

using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.IdentityModel.Tokens;
using System;
using System.Collections.Gene...

ASP.NET中的页面跳转问题

问题
现在有一个用户登录页面,其中包含用户注册,如何做可使得单击用户注册可以进入注册页面?

最佳回答
Server.Transfer(url);            
Response.Redirect(rul):

...

ASP.NET Core中使用Swagger

在实际的软件开发过程中,我们通常会采用一种前后端分离的开发模式,在这种模式下一般会由前后端两类开发人员协同开发,在这种情况下后端开发人员则需要提供API文档去与前端人员进行对接,这样才能保障后续的工作能够顺利开展。
 
并且当前项目在与外部系统进行业务往来或者数据交互的时候,我们通常会作为“接口方”对外提供数据,这种情况下我们通常也会需要后端开发人员去针对接口编写API文档。另外,在API接口开发完成后,我们的测试人员还要单独下载第三方接口测试工具对API接口进行测试。
 
那么基于以上的应用场景的痛点,本文将推荐一个既方便又美观的接口文档框架——Swagger。
使用...

367源码以及API文档概述

1
API=类库+帮助文档;

2

热爱每一天

...

API管理平台,可视化统一管理企业API

API管理平台是为开发、产品、测试人员提供接口管理服务,帮助开发者更好地管理API接口,轻松实现创建、发布、维护API。
 
企业数字化转型为何需要用到API管理平台?
 
随着企业的不断发展,各类型的业务系统起来越多,而企业系统中,每个应用都需要后台API支撑,当API起来越多的时候,企业在API管理方面就面临着众多的问题;
例如:
API发布有没有上下线流程?
API接入有没有接入规范?
API是否被非法调用,如何预警?
API能否下线?
API版本变更能否及时通知?
如何快速检索到需要的API服务?
如何控制消费者的流量和速率?
如何管理业务系统暴露的上万API ?...

.net core API 使用swagger

第一种方法:直接添加swagger,会在app_start中生成SwaggerConfig,在该文件中配置相关内容(把生成xml打开);
第二种方法:添加四个引用文件Swashbuckle.AspNetCore.Swagger 、Swashbuckle.AspNetCore.SwaggerGen、Swashbuckle.AspNetCore.SwaggerUI、Swashbuckle.AspNetCore;然后在startup文件中添加以下代码:

public void ConfigureServices(IServiceCollection services)
...

springboot-swagger:配置API分组

承接:springboot-swagger:配置开关
1 配置分组
如果没有配置分组,默认是default.通过groupName()方法即可配置分组
1.1 修改SwaggerConfig
src/main/java/com/lv/config/SwaggerConfig.java
//配置了Swagger的Docket的bean实例
@Bean
public Docket docket(Environment environment){

//设置要显示的swagger环境
Profiles profiles = Profiles.of("dev", "test");
...

ASP.NET Core Swagger接入使用IdentityServer4 的 WebApi

写在前面
是这样的,我们现在接口使用了Ocelot做网关,Ocelot里面集成了基于IdentityServer4开发的授权中心用于对Api资源的保护。问题来了,我们的Api用了SwaggerUI做接口的自文档,那就蛋疼了,你接入了IdentityServer4的Api,用SwaggerUI调试、调用接口的话,妥妥的401,未授权啊。那有小伙伴就会说了,你SwaggerUI的Api不经过网关不就ok了?诶,好办法。但是:

我不想改变Url规则啊,我是/api开头的Url都是经过网关的,如果不经过网关要加端口或者改变Url规则,会给其他部门的同事带来麻烦(多个Url规则容易混淆);
另外是,...

文章标题:ASP.NET Web API +Swagger创建与汉化生成 API说明文档
文章链接:https://www.dianjilingqu.com/51381.html
本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:saisai#email.cn,感谢支持理解。
THE END
< <上一篇
下一篇>>