IIS发布.net6 api+微信小程序/H5真机调试接口的流程

2023-05-16

我们创建.net6 api程序,然后使用SqlSugar连接MySQL数据库,再使用iis发布,当然使用其他的也行。再开发一个微信小程序,手机运行小程序,手机运行H5,都可以看到数据库的数据,就是这么一个流程。

开始!

目录

第一,.net6api开发

第二,IIS发布.net6api

第三,开发微信小程序

第四,微信小程序真机运行

第五,H5运行


第一,.net6api开发

1.创建.net6 api程序

2.安装SqlSugarCore

3.为了简单,就在WeatherForecastController控制器里面写一个方法

业务就是:查询c表的数据,数据没有任何意义,仅仅只是举例

using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using SqlSugar;
using System.Data;

namespace testNet6.Controllers
{
    [ApiController]
    [Route("api/[controller]/[action]")]
    public class WeatherForecastController : ControllerBase
    {
        private static readonly string[] Summaries = new[]
        {
        "Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
    };
        private readonly ISqlSugarClient db;
        private readonly ILogger<WeatherForecastController> _logger;

        public WeatherForecastController(ILogger<WeatherForecastController> logger, ISqlSugarClient db)
        {
            _logger = logger;
            this.db = db;
        }

        [HttpGet]
        public IEnumerable<WeatherForecast> Get()
        {
            return Enumerable.Range(1, 5).Select(index => new WeatherForecast
            {
                Date = DateTime.Now.AddDays(index),
                TemperatureC = Random.Shared.Next(-20, 55),
                Summary = Summaries[Random.Shared.Next(Summaries.Length)]
            })
            .ToArray();
        }
        [HttpGet]
        public async Task<ActionResult<object>> GetAll()
        {
            DataTable dt = await db.Ado.GetDataTableAsync($"SELECT `c`\r\n\t,`cc`\r\n\t,`q`\r\nFROM `test`.`c`\r\n ");
            return JsonConvert.SerializeObject(dt);
        }
    }
}

Program.cs代码

包含了注入SqlSugarScope和跨域的配置

using SqlSugar;

namespace testNet6
{
    public class Program
    {
        public static void Main(string[] args)
        {
            var builder = WebApplication.CreateBuilder(args);

            builder.Services.AddControllers();
            builder.Services.AddEndpointsApiExplorer();
            builder.Services.AddSwaggerGen();
            builder.Services.AddSingleton<ISqlSugarClient>(db =>
            {
                return new SqlSugarScope(
                           new ConnectionConfig()
                           {
                               DbType = SqlSugar.DbType.MySql,
                               ConnectionString = builder.Configuration["ConnectString"],
                               IsAutoCloseConnection = true,
                           }, db =>
                           {
                               //单例参数配置,所有上下文生效       
                               db.Aop.OnLogExecuting = (sql, pars) =>
                               {
                                   Console.WriteLine(UtilMethods.GetSqlString(SqlSugar.DbType.MySql, sql, pars));
                               };
                           });
            });
            builder.Services.AddCors(options =>
            {
                options.AddPolicy("cors", p =>
                {
                    p.AllowAnyOrigin()
                    .AllowAnyMethod()
                    .AllowAnyHeader();

                });
            });

            var app = builder.Build();

            app.UseSwagger();
            app.UseSwaggerUI();
            app.UseCors("cors");
            app.UseHttpsRedirection();

            app.UseAuthorization();


            app.MapControllers();

            app.Run();
        }
    }
}

4.效果

此时我们直接运行代码可以看到需要的数据

第二,IIS发布.net6api

当然这步也可以使用Nginx来发布.net6 api,等等其他的也行

1.回到程序中,然后我点击发布

这里选择如图所示即可

2.然后看到publish文件夹下生成的文件

3. 打开IIS,然后输入网站名称,物理路径就是指向publish

点击确定

4.运行效果

补充:切记只要环境配置正常了,直接扔进去即可,不需要任何设置,设置了可能出问题。 

配置问题,具体可以百度搜索一下,主要是要下载运行时文件,这里就不详细说了

Download .NET 6.0 (Linux, macOS, and Windows)

是否成功看模块中的项,如图所示

第三,开发微信小程序

1.微信小程序我们使用uniapp开发,具体参考如下

uniapp中调用.net6 webapi_uniapp webapi_故里2130的博客-CSDN博客

2.这里的功能很简单,就是我们访问.net6api的数据,在前台上显示即可

所以,这里的代码就简写了

 首先我们配置后台接口

const BASE_URL = 'http://192.168.191.1:8066'

这里的request我使用的是luch-request,都封装好了,直接用即可

	request.get(`/api/WeatherForecast/GetAll`).then(res => {
			console.log(res)
			aaaaa.value = res
		})

3.一切完成后,点击运行

4.效果

这是网站的效果

5.进入微信开发者工具之前

这里坑很多,只说大概流程

此时就要申请测试号,网址如下,把APPID填到下图中

小程序

6.如图所示,点击运行

这里也有很多坑,有时候运行不起来,可以看程序的报错,要打开端口,不行就多运行几次,或者退出试试。

7.进入微信开发者工具

终于进来了!!!

如果这里是灰色的,是不能真机调试的,所以这步是关键,APPID是关键

8.运行

如果报错点击这2个按钮,直到运行成功

9.成功运行,并且显示的数据和网站的一样

此时我们开发的环境就是这么多,足够用了。也就是网站和微信小程序开发的环境。 

总以为把所有的坑都踩完了,万万没想到啊,真机运行才是最大的坑。

第四,微信小程序真机运行

 1.首先排除出现这个错误提示,不影响的,是正常的

2.先看看,遇到错误图,现在已经对不上号了,因为最后一步真机调试,断断续续折腾2天,也设置了很多配置,都是无用功

基本上都是

errno":600001这些

request:fail errcode:-300 cronet_error_code:-300 error_msg:net::ERR_INVALID_URL

还有什么SSL问题,很多人说微信小程序只能访问HTTPS,不能访问HTTP。当时我还问了微软的ChatGpt,她也说是的,我人麻了,安装SSL又非常的复杂。她的意思是不是在正式部署的时候必须使用HTTPS?暂时我也不知道,谁知道可以告诉我一下。但是真机调试时,http也是可以的,我已经测试成功,本案例就是基于HTTP的。

3.意外发现

当我部署.net6api以后,在Windows的日志中,发现了问题

An unhandled exception was thrown by the application

Unable to resolve service for type 'SqlSugar.ISqlSugarClient' 

这就是最后的线索了,意思是我程序中的ISqlSugarClient没有被解析。

原因就是这里导致的,正确的写法就是一开始.net6api中ISqlSugarClient注入的写法。

最奇怪的是:“之前错误的写法”,在IIS部署后,网站,微信小程序都可以访问,没有任何问题,就是到了真机调试的时候出的问题, 所以怀疑代码写错实在太难了。

3.配置截图

注意微信开发者工具的版本

手机网络和电脑要在同一个WiFi环境下这是前提

然后下面是配置的截图,成功运行的配置

  

4.真机运行

出不来,就多重启几次,多编译几次,缓存清理一下 

手机上面的显示 

电脑的日志显示

至此,微信小程序真机终于成功了! 

第五,H5运行

1.H5比较简单,选择如图所示

2.会生成静态文件夹

3.在IIS上面部署即可

H5配置的时候,会出现IIS跨域问题,这个问题百度即可,但是也不好设置,因为每台电脑的IIS内置有些不一样。

4.手机访问H5

输入IP地址和端口即可

 

大功告成! 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IIS发布.net6 api+微信小程序/H5真机调试接口的流程 的相关文章

  • ubuntu 上vscode gdb可视化源码调试live555

    目录 1 ubuntu 下载安装vscode 2 vscode 添加插件 3 下载live555源码 4 live555 生成makefile 5 vscode 打开目录 开始编译 6 0 添加修改调试配置 7 0 打断点 xff0c 愉快
  • linux运行jar文件Invalid or corrupt jarfile错误

    今天在项目中遇到一个很坑爹的问题 xff0c 用eclipse导出来的jar文件 xff0c 在window系统下可以正常使用 xff0c 但是讲jar传到linux环境就不能正常使用了 总是提示Invalid or corrupt jar
  • 【Linux应用】mdadm失败:RUN_ARRAY fail:Invalid argument

    1 简介 mdadm xff0c lvm工具提供强大的动态磁盘管理功能 xff0c 只是操作RAID的用户态工具而已 xff0c 两者都需要内核md的支持 xff0c 故使用前需查看内核是否支持md xff0c 如果不支持需重新编译内核 如
  • VMware虚拟机安装黑群晖7.0教程

    教程仅供参考 xff0c 不当之处多多理解 本篇教程主要讲解黑群晖 xff08 DS918 43 xff09 的详细安装教程 Tip 本教程本教程只用 学习使用 xff0c 有条件 xff0c 长期使用的朋友推荐从正规官方渠道入手 1 首先
  • Windows11 安装WSA(Android)教程

    Ps 安装WSA必要条件 电脑系统已经更新为Windows11 22000正式版系统开启处理器虚拟化支持 安装步骤 1 右键开始 运行 control exe 程序和功能 启用关闭windows功能 2 开启或关闭 Windows 功能 勾
  • 群晖修改默认使用root权限登录SSH教程

    群辉默认不允许SSH默认使用ROOT登陆 xff0c 只能用admin登陆 xff0c 从而使权限得到一定限制 xff0c 导致使用WINSCP时部分文件夹无法显示或提示权限不够 xff0c 那么应该怎么修改呢 xff1f 方法如下 xff
  • VMware虚拟机安装黑群晖7.1

    之前发布了7 0的版本群辉引导 xff0c 用的人还挺多的 xff0c 这次官网又出了7 1新版本 xff0c 我也是快马加鞭的给更新出来了 使用方法 xff1a 1 首先解压安装包 xff0c 双击解压出来的DSM918或者是3615 v
  • ESXi8.0 虚拟机安装黑群晖7.1.1

    ESXi虚拟机安装群辉7 1 一 准备工作 xff1a ESXi虚拟机一台 xff0c 版本任意 群辉VMDk引导文件 xff08 文章末尾有提供下载 xff09 群辉系统安装 xff08 pat xff09 文件 支持兼容情况 xff1a
  • 零刻 SEi12 Pro,ALL IN ONE搭建教程

    一台mini的NUC能做什么 xff1f 当然每个人的心里都会有着不同的答案 xff0c 既然是一台Mini主机那就肯定少不了部署一个All In One来榨干他的性能 今天我就大家带来一个部署All In One的详细教程 xff0c 希
  • [零刻]EQ12 N100 迷你主机:从开箱到安装ESXi+虚拟机

    开箱先上图 xff1a 配置详情 xff1a EQ12采用了Intel最新推出的N100系列的处理 xff0c 超低的功耗 xff0c 以及出色的CPU性能用来做软路由或者是All in one 相当不错 x
  • [零刻]EQ12迷你主机设置来电开机自启教程

    EQ12 来电自启需通过BIOS设置 断电前开机状态则来电后自动开机 xff0c 关机状态则不会自动开机 操作步骤 xff1a 1 首先关闭主机 xff0c 按下电源后 xff0c 当屏幕出现logo后 xff0c 迅速按下键盘上的Del键
  • C语言习题:字符串操作函数练习题目

    1 将包含字符数字的字符串分开 使得分开后的字符串前一部分是数字后一部分是字母 例如 h1ell2o3 gt 123hello span class token macro property span class token directi
  • Java单元测试实践-08.Stub、Replace、Suppress静态方法

    Java单元测试实践 00 目录 xff08 9万多字文档 43 700多测试示例 xff09 https blog csdn net a82514921 article details 107969340 1 Stub Replace S
  • [零刻]EQ12安装PVE虚拟机教程

    PVE虚拟机简介 Proxmox VE是一个运行虚拟机和容器的平台 基于Debian Linux xff0c 完全开源 为了获得最大的灵活性 xff0c 实现了两种虚拟化技术 基于内核的虚拟机 KVM 和基于容器的虚拟化 LXC 一个主要的
  • [零刻]EQ12&EQ12Pro安装OpenWRT软路由教程

    OpenWRT系统安装 安装前准备 1 U盘一个 2 WePE写盘工具 3 Openwrt固件 4 Img镜像写盘工具 安装步骤 xff1a 1 首先下载WePE写盘工具 xff0c 制作一个PE系统安装环境 xff0c 启动软件后 xff
  • [零刻]EQ12&EQ12Pro安装原厂系统教程

    有些小伙伴购买的准系统的版本因为不带内存和硬盘 xff0c 需要自己进行安装系统 xff0c 对于小白来说还是比较困难的 xff0c 在这里推荐大家使用原厂的系统 xff0c 里面自带驱动安装好后就可以直接使用 使用原厂系统包安装步骤 xf
  • Esxi8.0安装Ubuntu系统教程

    本篇教程主要教大家怎么在ESXi8 0虚拟机上安装Ubuntu系统 xff0c 首先安装Ubuntu需要准备一个ISO系统镜像文件 xff0c 我们可以去Ubuntu官网下载 Ubuntu官网 xff1a https ubuntu com
  • [零刻]EQ12&EQ12Pro调整风扇转速教程

    调整 CPU 风扇转速可以有不同的用途 xff0c 具体取决于您的计算机和使用情况 降低噪音 xff1a 如果您的风扇的噪音很大 xff0c 可以通过降低 CPU 风扇的转速来减少噪音 这可以通过在 BIOS 或中设置 CPU 风扇转速控制
  • [零刻]EQ12&EQ12Pro调整最低功耗教程

    在使用EQ12作为软路由的时候 xff0c 因为要不间断工作 xff0c 功耗就非常关键了 xff0c 所以并不需要太高的功耗 xff0c 所以接下来我教你怎么设置以最低功耗运行 具体操作步骤 xff1a 1 先关闭电脑 xff0c 按下电
  • 动态更新阿里云DDNS解析记录的IPv6地址,随时随地用域名远程访问自己的电脑【如何远程访问家里的电脑】

    远程访问电脑 日志简介要求1 IPv6网络1 1检查光猫是否支持IPv61 2检查路由器是否支持并开启IPv6 xff08 没有路由器的跳过这一步 xff09 1 3配置电脑防火墙1 3 1允许ICMPv6协议通过防火墙1 3 2文件共享S

随机推荐

  • 一个好用的js压缩加密网站

    js加密网站 我是vue的js xff0c 用了好几个加密网站得出的结果会有错 xff0c 这个挺好
  • alibaba pc safe service无法删除,一直在后台运行怎么办?

    对付流氓软件 xff0c 应当使用师夷长技以制夷的办法 xff0c 下载一个腾讯电脑管家 xff0c 然后下载里面的文件粉碎机 xff0c 在任务管理器找到对应的alibaba pc safe service服务 xff0c 点击进入具体的
  • APP流量变现之穿山甲广告平台接入

    1 首先百度搜索 穿山甲广告投放 xff0c 第一个出现的链接就是开发者官网 xff0c 截图如下 xff1a 2 进入之后点击注册 xff0c 然后登陆 xff08 这一步穿山甲超级简单 xff0c 如果不着急提现收益的话 xff0c 可
  • spss统计分析基础教程(上)--自学

    64 TOC 目录 xff09 第一章 四种窗口 数据窗口 输出窗口 语法窗口 脚本窗口 菜单 1 文件 xff1a 新建 打开 保存 另存为 将文件标记为只读 xff1a 如果之后保存文件 xff0c 则只能重命名并另存 重新命名数据集
  • OpenWrt 内的阿里云盘 WebDAV 做磁盘使用

    最近在玩OpenwWrt的时候 xff0c 在刷的固件里看到预装的阿里云盘 WebDAV xff0c 加上最近刚刚开始用阿里云 xff0c 不限速 xff0c 非常快 xff0c 通过这个服务 xff0c 可以直接把阿里云的文件架挂载在本地
  • VS2022中使用Copilot

    Copilot可以自动帮你写代码 1 打开vs2022 点击扩展 xff0c 在里面搜索copilot安装 2 安装完成后 xff0c 左下角有个小图标就是copilot 3 点击登录 会弹框 点击确定后 xff0c 跳转到网站 xff0c
  • CSS/SCSS/LESS和自适应布局/响应式布局详解

    在开发前端的时候 xff0c 界面布局尤为重要 xff0c 要布局的非常合理 xff0c 好看 xff0c css是必不可少的 xff0c 然后是各种布局 xff0c 使用这些布局 xff0c 进行混合搭配 xff0c 最终的目的都是开发一
  • 响应式布局之viewport-超级简单

    之前文章CSS布局之详解 故里2130的博客 CSDN博客 上面的文章可以实现响应式布局 xff0c 根据浏览器的大小变化而变化 xff0c 但是相对于viewport来说 xff0c 之前的还是有点复杂 xff0c 而使用viewport
  • .net6API使用AutoMapper和DTO

    AutoMapper xff0c 是一个转换工具 xff0c 说到AutoMapper时 xff0c 就不得不先说DTO xff0c 它叫做数据传输对象 Data Transfer Object 通俗的来说 xff0c DTO就是前端界面需
  • 手机/移动端的UI框架-Vant和NutUI

    下面推荐2款手机 移动端的UI框架 其实还有很多的框架 xff0c 各个大厂都有UI框架 目前 xff0c 找来找去 xff0c 只有腾讯的移动端是setup语法写的TDesign xff0c 其他大厂 xff0c 虽然都是VUE3写的 x
  • 使用uniapp创建小程序和H5界面

    uniapp的介绍可以看官网 xff0c 接下来我们使用uniapp创建小程序和H5界面 xff0c 其他小程序也是可以的 xff0c 只演示创建这2个 xff0c 其实都是一套代码 xff0c 只是生成的方式不一样而已 uni app官网
  • 使用NutUI创建小程序和H5界面

    做开发的时间长了 xff0c 技术都是通用的 xff0c 创建小程序和H5界面有很多的UI xff0c 本章节演示使用NutUI来创建 xff0c 官网 xff0c NutUI 移动端 Vue3 小程序组件库 1 使用HBuilder X创
  • 如何开发微信小程序呢

    也许很多人对小程序 xff0c H5程序 xff0c Vue xff0c 网页程序 xff0c PC端程序认识比较模糊 xff0c 因为这些跨度非常的大 xff0c 很少人会一次性全部接触 xff0c 甚至只是听说过 xff0c 并不了解其
  • .NET6中使用GRPC详细描述

    Supported languages gRPC xff0c 官网 至于原理就不说了 xff0c 可以百度原理之后 xff0c 然后再结合代码 xff0c 事半功倍 xff0c 就能很好理解GRPC了 目录 一 简单使用 二 实际应用 一
  • spss统计分析基础教程(下)--自学

    目录 xff09 第十二章分布类型的检验12 1假设检验的基本思想12 2正态分布检验K S检验的原理 12 3二项分布检验12 4游程检验12 5蒙特卡罗方法 第十三章连续变量的统计推断 xff08 一 xff09 t检验13 1t检验概
  • uniapp学习记录

    目录 1 布局使用flex布局 2 rpx和界面自适应 xff0c 设计稿是750rpx 3 首页不显示tabBar 4 跳转页面 启动跳转页面 5 uniapp中页面生命周期 传值 6 颜色使用 7 字体使用 8 SCSS CSS中获取j
  • uniapp中调用.net6 webapi

    使用uniapp开发程序时 xff0c 不管是小程序 xff0c 还是H5界面 xff0c 它们只是一个显示界面 xff0c 也就是只充当前台界面 xff0c 那么我们后台使用 net6 webapi写业务逻辑 xff0c 然后前端访问后端
  • vue3中前端处理不同数据结构的JSON

    有时候 xff0c 后端返回的JSON数据格式 xff0c 是前端不需要的格式类型 xff0c 这时 xff0c 要么让后端修改 xff0c 你要什么格式 xff0c 那么让后端大哥哥给你返回什么格式 但是有时候不尽人意 xff0c 后端大
  • 在vue3中Element Plus切换主题

    一共2种方法 目录 第一种 第二种 第一种 暗黑模式 xff0c 使用useDark xff0c 可以不用安装Element Plus xff0c 只切换页面的背景颜色 xff0c 不改变Element Plus控件的颜色 xff0c 本案
  • IIS发布.net6 api+微信小程序/H5真机调试接口的流程

    我们创建 net6 api程序 xff0c 然后使用SqlSugar连接MySQL数据库 xff0c 再使用iis发布 xff0c 当然使用其他的也行 再开发一个微信小程序 xff0c 手机运行小程序 xff0c 手机运行H5 xff0c