0成本实现.NET Web API 8.0项目内网映射

1.背景

最近在学习CICD,里面会有用到内网映射的使用场景。为了加深对内网映射实操的记忆。我实操了下基于.Net 8.0的内网映射,并支持互联网访问。本文主要介绍了在win11下安装路由侠,并将.net 8.0发布到win11,项目运行、路由侠配置内网外网映射等,最终实现.NET Web API 8.0支持本地和互联网访问。这个操作比较简单,好上手。内网映射,有开源工具和商业产品。比如路由侠和花生壳就是比较成熟的商业产品。开源工具比如有frp,它使用的前提是要有一台公网服务器。

2.部署WebAPI项目

2.1 .Net 8.0 WebAPI项目准备

2.2 新增LuYouXiaController

代码如下:

cs 复制代码
using Microsoft.AspNetCore.Mvc;

namespace luyouxia.Controllers
{
    [ApiController]
    [Route("[controller]/[action]")]
    public class LuYouXiaController : ControllerBase
    {
        private readonly ILogger<WeatherForecastController> _logger;

        public LuYouXiaController(ILogger<WeatherForecastController> logger)
        {
            _logger = logger;
        }

        [HttpGet(Name = "GetLuYouXia")]
        public string GetLuYouXia()
        {

            return $"路由侠展示:{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}";
        }



    }
}

2.3 编译、发布

将项目编译,发布到publish文件夹

2.4 运行

找到2.3的publish文件夹,双击"luyouxia.exe"启动

从上图,我们看到项目的运行地址是:http://localhost:5000/LuYouXia/GetLuYouXia

其实也是 127.0.0.1:5000/LuYouXia/GetLuYouXia; 为了方便映射。会用ip去访问。

3.部署路由侠

3.1 主界面

安装过程和账号注册,直接忽略。软件主界面 如下所示:

3.2 内网映射

打开 3.1 图的"内网映射"

添加映射

修改-内网地址

选中上面的记录,右键-复制地址,并将这个地址后面拼接上 /LuYouXia/GetLuYouXia

例子:laiger.w1.luyouxia.net/LuYouXia/GetLuYouXia

4.结束

至此,就已经操作完成。成功的将本地web api项目映射到了公网,实现互联网也能访问本地的项目了。操作比较简单,可以基于简单操作去了解原理,拆解相关流程,熟悉框架玩法。

相关推荐
叶梅树几秒前
从零构建A股量化交易工具:基于Qlib的全栈系统指南
前端·后端·算法
巴博尔6 分钟前
uniapp的IOS中首次进入,无网络问题
前端·javascript·ios·uni-app
InCerry20 分钟前
为 .NET 10 GC(DATAS)做准备
性能优化·c#·.net·gc
Asthenia041242 分钟前
技术复盘:从一次UAT环境CORS故障看配置冗余的危害与最佳实践
前端
csj501 小时前
前端基础之《React(1)—webpack简介》
前端·react
被巨款砸中1 小时前
前端 20 个零依赖浏览器原生 API 实战清单
前端·javascript·vue.js·web
文韬_武略1 小时前
web vue之状态管理Pinia
前端·javascript·vue.js
mosen8681 小时前
【Vue】Vue Router4x关于router-view,transtion,keepalive嵌套写法报错
前端·javascript·vue.js
曹牧1 小时前
C#:可选参数
开发语言·c#
奇树谦2 小时前
Chrominum的技术架构
架构