aps.net core 6.0 web API SwaggerUI IIS部署【23.10.15】亲测,通过

2023-10-16 09:45

本文主要是介绍aps.net core 6.0 web API SwaggerUI IIS部署【23.10.15】亲测,通过,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录
  • 一、aps.net core 6.0 web API 项目配置
    • 创建项目
    • 设置 Swagger UI 为起始页
    • 发布项目
  • 二、在 IIS 部署
    • 安装IIS
    • 安装 Hosting Bundle
  • 三、内网穿透

使用的是 VS2022社区版,WebAPI的版本是 .netcore6.0

一、aps.net core 6.0 web API 项目配置

1.创建项目

运行项目会默认打开 Swagger UI 界面

设置 Swagger UI 为起始页

打开 launchSettings.json 文件
屏蔽以下两行代码

打开 Program.cs 文件
屏蔽原来的环境判断,新增以下代码

            app.UseSwagger();app.UseSwaggerUI(c =>{c.RoutePrefix = "";c.SwaggerEndpoint("/swagger/v1/swagger.json", "ApiHelp V1"); //第二个参数可自定义命名});

解释一下,这么做的目的是防止别名出现找不到 swagger.json 的错误

再次运行调试,会发现以下变化

发布项目

发布项目:右击项目 → 发布,选择文件夹

选择文件夹位置,这个位置就是 项目发布后的文件 所在的位置

检查 目标位置 的文件夹是否存在,不然会报错
点击 更多操作→编辑 可根据自己的项目进行设置

设置好后,点击 发布
当输出显示成功即发布成功;若失败会显示具体信息供排查

二、在 IIS 部署

安装IIS

安装 Hosting Bundle

点击 下载 .NET(Linux、macOS 和 Windows)
下载安装 Hosting Bundle
我这里安装的是 Hosting Bundle 6.0,可根据情况适当更改

安装成功后,打开 IIS →模块 后会在列表看到 AspNetCoreModuleV2

右键 网站 添加网站

点击 应用程序池 
选择 无托管代码

点击浏览,则会跳转到 Swagger UI 界面

三、内网穿透

打开 控制面板 → 防火墙

高级设置

入站规则 → 新建规则

端口 → 特定本地端口
然后一直按 下一步,最后填写 名称 即可完成

端口8093

名称:AliWorkbench.WebApi

现在,内网的其他小伙伴也可以访问你的 web API 了
其他用户访问的url需加入你的 ipv4 地址
例:你的 ipv4 为 192.100.99.1
本地访问:http://localhost:4040/index.html
内网访问: http://192.100.99.1:4040/index.html
 

1生成xml文档

项目右键,选择属性,点击生成,勾选,将项目编译生成,就会自动创建xml文档

2修改Program.cs

只要改一个地方就行

builder.Services.AddSwaggerGen(c =>{c.SwaggerDoc("v1", new OpenApiInfo { Title = "阿里工作台-微信小程序后端api文档", Version = "v1" });// var basePath = Path.GetDirectoryName(typeof(Program).Assembly.Location);//获取应用程序所在目录(绝对,不受工作目录影响,建议采用此方法获取路径)// var xmlPath = Path.Combine(basePath, "HouseSysWebApplication.xml");var xmlPath = Path.Combine(AppContext.BaseDirectory, "AliWorkbenchProgram.xml");c.IncludeXmlComments(xmlPath, true);//true:显示控制器注释c.OrderActionsBy(o => o.RelativePath);//action名称排序});

3编译生成,启动,看效果,立马中文

这篇关于aps.net core 6.0 web API SwaggerUI IIS部署【23.10.15】亲测,通过的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/220118

相关文章

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

PHP应用中处理限流和API节流的最佳实践

《PHP应用中处理限流和API节流的最佳实践》限流和API节流对于确保Web应用程序的可靠性、安全性和可扩展性至关重要,本文将详细介绍PHP应用中处理限流和API节流的最佳实践,下面就来和小编一起学习... 目录限流的重要性在 php 中实施限流的最佳实践使用集中式存储进行状态管理(如 Redis)采用滑动

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

Go语言使用net/http构建一个RESTful API的示例代码

《Go语言使用net/http构建一个RESTfulAPI的示例代码》Go的标准库net/http提供了构建Web服务所需的强大功能,虽然众多第三方框架(如Gin、Echo)已经封装了很多功能,但... 目录引言一、什么是 RESTful API?二、实战目标:用户信息管理 API三、代码实现1. 用户数据

在ASP.NET项目中如何使用C#生成二维码

《在ASP.NET项目中如何使用C#生成二维码》二维码(QRCode)已广泛应用于网址分享,支付链接等场景,本文将以ASP.NET为示例,演示如何实现输入文本/URL,生成二维码,在线显示与下载的完整... 目录创建前端页面(Index.cshtml)后端二维码生成逻辑(Index.cshtml.cs)总结

Python用Flask封装API及调用详解

《Python用Flask封装API及调用详解》本文介绍Flask的优势(轻量、灵活、易扩展),对比GET/POST表单/JSON请求方式,涵盖错误处理、开发建议及生产环境部署注意事项... 目录一、Flask的优势一、基础设置二、GET请求方式服务端代码客户端调用三、POST表单方式服务端代码客户端调用四

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

SpringBoot结合Knife4j进行API分组授权管理配置详解

《SpringBoot结合Knife4j进行API分组授权管理配置详解》在现代的微服务架构中,API文档和授权管理是不可或缺的一部分,本文将介绍如何在SpringBoot应用中集成Knife4j,并进... 目录环境准备配置 Swagger配置 Swagger OpenAPI自定义 Swagger UI 底