VSCode开发ASP.NET WEBAPI环境

这篇具有很好参考价值的文章主要介绍了VSCode开发ASP.NET WEBAPI环境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.WINDOWS10系统WSL2安装Oracle Linux 7.9子系统(包含DOCKER以及使用DOCKER部署MYSQL-8.3.0)
(1)在管理员的Windows PowerShell执行命令(打开“适用于Linux的Windows子系统”)
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
(2)在管理员的Windows PowerShell执行命令(打开“虚拟机平台”)
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
(3)重启电脑
(4)设置WSL默认版本
wsl --set-default-version 2
(5)更新WSL
wsl --update
(6)重启WSL
wsl --shutdown
(7)重启电脑
(8)查看可以安装Linux版本(DSN配置成114.114.114.114)
wsl --list --online
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
OracleLinux_7_9 Oracle Linux 7.9
OracleLinux_8_7 Oracle Linux 8.7
OracleLinux_9_1 Oracle Linux 9.1
openSUSE-Leap-15.5 openSUSE Leap 15.5
SUSE-Linux-Enterprise-Server-15-SP4 SUSE Linux Enterprise Server 15 SP4
SUSE-Linux-Enterprise-15-SP5 SUSE Linux Enterprise 15 SP5
openSUSE-Tumbleweed openSUSE Tumbleweed
(9)安装Oracle Linux 7.9
wsl --install -d OracleLinux_7_9
PS C:\Users\Administrator> wsl --install -d OracleLinux_7_9
正在安装: Oracle Linux 7.9
已安装 Oracle Linux 7.9。
正在启动 Oracle Linux 7.9…
Installing, this may take a few minutes…
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: ybjk
Changing password for user ybjk.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
Installation successful!
[ybjk@DESKTOP-AKD562M ~]$
(10)重新打开Windows PowerShell查看子系统状态
wsl -l -v
PS C:\Users\Administrator> wsl -l -v
NAME STATE VERSION

  • OracleLinux_7_9 Stopped 2
    (11)确认处于Stopped状态,否则运行下列命令后重新执行(10)步骤
    wsl --terminate OracleLinux_7_9
    (12)执行下列命令将子系统备份至D盘
    wsl --export OracleLinux_7_9 D:\OracleLinux_7_9.tar
    (13)卸载C盘的OracleLinux_7_9系统,命令如下
    wsl --unregister OracleLinux_7_9
    (14)在D盘创建文件夹OracleLinux-Sys并将备份的系统(OracleLinux_7_9.tar)恢复到文件夹
    wsl --import OracleLinux_7_9 D:\OracleLinux-Sys D:\OracleLinux_7_9.tar --version 2
    (15)在Microsoft Store安装Windows Terminal
    (16)关闭Windows PowerShell打开Windows Terminal,默认会打开Windows Terminal,可以再增加一个OracleLinux_7_9命令窗口,在命令窗口设置root用户密码,命令如下
    passwd
    [root@DESKTOP-AKD562M ~]# passwd
    Changing password for user root.
    New password:
    BAD PASSWORD: The password is shorter than 8 characters
    Retype new password:
    passwd: all authentication tokens updated successfully.
    (17)从OracleLinux-R7-U9-Server-x86_64-dvd.iso光盘镜像中获得repodata和Packages文件夹复制到D盘
    (18)在Windows Terminal的OracleLinux_7_9命令窗口进入/mnt下创建IOS文件夹,并进入IOS文件夹,执行命令
    cp …/d/repodata ./ -r
    cp …/d/Packages ./ -r
    (19)在Windows Terminal的OracleLinux_7_9命令窗口执行如下命令
    vim /etc/yum.repos.d/oracle-linux-ol7.repo
    修改
    [ol7_latest]
    name=Oracle Linux r e l e a s e v e r L a t e s t ( releasever Latest ( releaseverLatest(basearch)
    baseurl=https://yum o c i r e g i o n . ociregion. ociregion.ocidomain/repo/OracleLinux/OL7/latest/$basearch/
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
    gpgcheck=1
    enabled=0
    增加
    [ol7_local]
    name=Oracle Linux r e l e a s e v e r L o c a l ( releasever Local ( releaseverLocal(basearch)
    baseurl=file:///mnt/IOS/
    enabled=1
    执行
    yum clean all
    yum makecache(报错改后缀名)
    (20)在Windows Terminal的OracleLinux_7_9命令窗口进入/mnt下创建rpm文件夹,并进入rpm文件夹,执行命令
    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.4.9-3.1.el7.x86_64.rpm
    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-20.10.9-3.el7.x86_64.rpm
    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-20.10.9-3.el7.x86_64.rpm
    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-rootless-extras-20.10.9-3.el7.x86_64.rpm
    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-scan-plugin-0.8.0-3.el7.x86_64.rpm
    wget https://www.rpmfind.net/linux/centos/7.9.2009/extras/x86_64/Packages/container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm
    wget https://www.rpmfind.net/linux/centos/7.9.2009/extras/x86_64/Packages/fuse-overlayfs-0.7.2-6.el7_8.x86_64.rpm
    wget https://www.rpmfind.net/linux/centos/7.9.2009/extras/x86_64/Packages/slirp4netns-0.4.3-4.el7_8.x86_64.rpm
    wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/fuse3-libs-3.6.1-4.el7.x86_64.rpm
    (21)在Windows Terminal的OracleLinux_7_9命令窗口进入/mnt/rpm目录下执行命令安装docker
    yum localinstall -y *.rpm
    (22)解决systemctl无效的操作,新增vim /etc/wsl.conf如下内容后
    [boot]
    systemd=true
    (23)在Windows Terminal的Windows PowerShell执行命令
    wsl --terminate OracleLinux_7_9
    (24)在Windows Terminal新增OracleLinux_7_9命令窗口开启系统运行下列命令启动docker
    systemctl enable docker
    systemctl start docker
    systemctl status docker
    (25)拉取mysql8.3.0镜像
    docker pull mysql:8.3.0
    (26)增加mysql用户进入用户家目录
    useradd mysql
    passwd mysql
    (27)创建数据持久化目录
    mkdir -p /home/mysql/data
    mkdir -p /home/mysql/logs
    mkdir -p /home/mysql/conf
    (28)编辑配置文件my.cnf,命令内容如下
    vim /home/mysql/conf/my.cnf
    #客户端设置
    [client]
    #客户端连接端口
    port=3306
    #客户端连接MySQLD通过mysql.sock文件进行通信(在同一台机器上)
    socket=/var/run/mysqld/mysqld.sock
    #设置MySQL客户端默认字符集
    default-character-set=utf8mb4
    #用mysql命令登陆数据库时的默认设置
    [mysql]

设置MySQL客户端默认字符集

default-character-set=utf8mb4
#客户端连接MySQLD通过mysql.sock文件进行通信(在同一台机器上)
socket=/var/run/mysqld/mysqld.sock
#关闭自动补全sql命令功能
no-auto-rehash
#服务端设置
[mysqld]
#Mysql服务唯一编号区分主从
server-id=1
#服务端口号
port=3306
#用户
user=mysql
#允许远程访问
bind-address=0.0.0.0
#服务端使用的字符集默认为8比特编码
character-set-server=utf8mb4
#大小写敏感0,1和2不敏感,linux默认只能0
lower_case_table_names=0
#自动提交,执行修改语句时1不用手动提交
autocommit=1

创建新表时将使用的默认存储引擎

default-storage-engine=InnoDB
#数据存放目录
basedir=/var/lib
datadir=/var/lib/mysql
pid-file=/var/run/mysqld/mysqld.pid
#客户端连接MySQLD通过mysql.sock文件进行通信(在同一台机器上)
socket=/var/run/mysqld/mysqld.sock
#日志文件
log-error=/var/run/mysqld/mysql.log

设置时区为东八区

default-time-zone = ‘+8:00’

MySQL事务隔离

transaction_isolation = REPEATABLE-READ

允许最大连接数 默认:151,注意服务器内存cpu

max_connections=1000
#负责阻止过多尝试失败的客户端以防止暴力破解密码
max_connect_errors = 6000
#超过最大连接数会将请求放入back_log堆栈内
#back_log限于系统对到来的TCP/IP连接的侦听队列的大小,超过无效。
#如果等待连接的数量超过back_log,将不被授予连接资源。
back_log = 600
#mysql打开文件描述符的限制,最大连接数的五倍
open_files_limit = 5000
#表缓存文件描述符数量
table_open_cache = 4000
#单个sql数据大于1g或者产生的binlog文件大于1g报错
max_allowed_packet=1G
#只能使用IP地址检查客户端登录
skip_name_resolve=1

控制内存临时表的最大值,超过限值后就往硬盘写tmpdir(/tmp)

tmp_table_size = 2048M

是对查询的内存临时表排序或分组形成的heap表

max_heap_table_size = 2048M
#一个事务没有提交时产生的日志到Cache中,等提交时把日志持久化磁盘。
binlog_cache_size = 12M

binlog 配置二进制日志路径

log_bin = /var/lib/mysql/binlog

binlog 配置二进制日志最大

max_binlog_size=1024M

日志自动过期清理秒数

binlog_expire_logs_seconds=86400

binlog 配置二进制日志格式

binlog-format = ROW
#不是每次写入时都将binlog与硬盘同步系统崩溃binlog丢失语句
#binlog在每N次binlog写入后与硬盘同步与InnoDB配合
sync_binlog =1

#读取表按数据文件顺序扫描缓存
read_buffer_size = 8M

MySQL的随机读缓冲区大小。

read_rnd_buffer_size = 8M
#MySQL执行排序使用的缓冲大小。
sort_buffer_size = 8M

联合查询操作所能使用的缓冲区大小

join_buffer_size = 8M
#重新利用保存在缓存中线程的数量,重新连接
thread_cache_size = 8
#使用键高速缓存来缓存索引内存1/4
key_buffer_size = 1024M
#全文索引最小索引长度默认4
ft_min_word_len=4

#设置InnoDB引擎最多可以同时打开缓冲池(Buffer Pool)中的表文件数量的变量
innodb_open_files=4096
#InnoDB使用一个缓冲池来保存索引和原始数据内存3/4
innodb_buffer_pool_size = 512M

innodb使用后台线程处理数据页上的读写请求,根据CPU核数设置默认是4

#假如CPU是2颗8核的就是8和8读比写多10和6
#范围1-64双核2-4每项四核4-8每项
innodb_write_io_threads = 4
innodb_read_io_threads = 4

默认设置为0表示不限制并发数

innodb_thread_concurrency = 0
#设置为 1 时表示使用单独的清除线程清楚InnoDB无用数据
innodb_purge_threads = 1
#把log buffer刷到文件系统中(osbuffer)去调文件系统“flush”将缓存刷新到磁盘上去
#0表示每隔一秒
#1表示每次事务提交最终写入磁盘耗IO
#2表示每次事务提交刷入文件系统数据库出问题文件系统好减少IO
innodb_flush_log_at_trx_commit = 2
#此参数确定些日志文件所用的内存大小以M为单位
innodb_log_buffer_size = 16M
#此参数确定数据日志文件的大小大性能好也会增加故障恢复时间
innodb_log_file_size = 48M
#提高性能MySQL可以以循环方式将日志文件写到多个文件MySQL8.0默认为2
innodb_log_files_in_group = 2

innodb主线程刷新缓存池中的数据脏数据比例小于90%

innodb_max_dirty_pages_pct = 90

InnoDB事务在被回滚之前可以等待一个锁定的超时秒数

innodb_lock_wait_timeout = 60

#命令行进入终端mysql -uroot -p进入
#如果没有操作的时间超过了interactive_time设置的时间就会自动断开
interactive_timeout = 28800
#当一个客户端连接到MySQL数据库后没有操作数据库保留连接的时间
#中途操作时间另算
wait_timeout = 28800

#开启慢查询日志
#慢查询日志记录了执行时间超过long_query_time秒的查询
slow_query_log=1

慢查询日志位置(不会自动删除)

slow_query_log_file = /var/lib/mysql/mysql-slow.log
#设置记录慢查询超时时间
long_query_time = 5
(29)执行下列命令容器化mysql-8.3.0
docker run --privileged=true -p 33060:3306 --name mysql830 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/logs:/var/log/mysql -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=12345678 -d mysql:8.3.0
(30)进入容器,设置数据库
①进入容器
docker exec -it mysql830 /bin/bash
②登录数据库
mysql -uroot -p
Enter password:12345678
③修改密码
alter user ‘root’@‘localhost’ identified by ‘123456’;
④创建数据库
create database jczs;
⑤创建用户
create user ‘ybjk’@’%’ identified by ‘ybjk’;
⑥给用户授权
grant all privileges on jczs.* to ‘ybjk’@’%’;
flush privileges;
(31)DBeaver下载驱动失败,在窗口首选项连接驱动MAVEN添加http://maven.aliyun.com/nexus/content/groups/public/最上,创建连接时下载驱动,驱动属性allowPublicKeyRetrieval true
2.开发环境搭建。安装如下软件
(1)Vscode,从Download Visual Studio Code - Mac, Linux, Windows下载System Installer版本,安装在D:\Vscode目录下,打开侧边栏“EXTENSIONS”面板。在搜索框中输入“Chinese”,查找出“中文简体”插件,点击“install”按钮, 按下“Ctrl+Shift+P”组合键以显示“命令面板”,然后键入“display”以筛选并显示“Configure Display Language”命令。按“Enter”,然后会按区域设置显示安装的语言列表,并突出显示当前语言设置。选择另一个“语言”以切换 UI 语言。
(2)安装wsl,如果系统带有子系统会提示安装此插件
(3)下载 .NET 8.0 SDK (v8.0.201) - Linux x64 Binaries (microsoft.com)开发包
(4)将dotnet-sdk-8.0.201-linux-x64.tar.gz复制到/mnt/dotnet/目录下
mkdir /mnt/dotnet
cd /mnt/dotnet
cp …/d/dotnet-sdk-8.0.201-linux-x64.tar.gz ./
mkdir -p /usr/share/dotnet
tar -xvf dotnet-sdk-8.0.201-linux-x64.tar.gz -C /usr/share/dotnet
ln -s /usr/share/dotnet/dotnet /usr/local/bin
(5)下载https://pan.baidu.com/s/1dMt94wW4JM3kq5lKn7PE6w?pwd=ee7h获得文件net8需要的环境libstdc.so-.6.0.26_c.gz,上传至/mnt/dotnet/目录下解压
cp …/d/net8需要的环境libstdc.so-.6.0.26_c.gz ./
tar -xvf net8需要的环境libstdc.so-.6.0.26_c.gz
(6)如下操作
删除链接
rm /usr/lib64/libstdc++.so.6
复制文件
cp libstdc++.so.6.0x64_cwj/libstdc++.so.6.0.26 /usr/lib64/
删除原版
rm /usr/lib64/libstdc++.so.6.0.19
重新建立链接
ln -s /usr/lib64/libstdc++.so.6.0.26 /usr/lib64/libstdc++.so.6
加载设置
ldconfig
环境变量设置
vim /etc/profile
末尾加上
export DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
保存后
source /etc/profile
(7)查看dotnet版本
dotnet --version
(8)打开Vscode连接到OracleLinux_7_9,菜单选查看终端,在终端里对WSL子系统的linux操作,这里在root家目录创建
[root@DESKTOP-AKD562M ~]# mkdir Fund.Supervision.Manager
(9)进入到Fund.Supervision.Manager文件夹内
创建解决方案命令
dotnet new sln --name Fund.Supervision.Manager
Vscode打开文件夹Fund.Supervision.Manager
创建WEBAPI项目
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet new webapi -o Fund.Supervision.API --no-https --use-controllers
将Fund.Supervision.API添加到Fund.Supervision.Manager.sln,在sln文件所在目录执行,移除remove
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet sln add ./Fund.Supervision.API/Fund.Supervision.API.csproj
编译命令
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet build
执行命令
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet run --project ./Fund.Supervision.API/Fund.Supervision.API.csproj
创建类库项目
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet new classlib -o Fund.Supervision.Model
将Fund.Supervision.Model添加到Fund.Supervision.Manager.sln,在sln文件所在目录执行,移除remove
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet sln add ./Fund.Supervision.Model/Fund.Supervision.Model.csproj
项目Fund.Supervision.API引用Fund.Supervision.Model项目
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet add ./Fund.Supervision.API/Fund.Supervision.API.csproj reference ./Fund
.Supervision.Model/Fund.Supervision.Model.csproj
在Fund.Supervision.API项目的Program.cs文件中将下列代码从花括号内移出避免发布后没有Swagger
if (app.Environment.IsDevelopment())
{

}
app.UseSwagger();
app.UseSwaggerUI();

重新编译命令
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet build
执行命令
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet run --project ./Fund.Supervision.API/Fund.Supervision.API.csproj
发布程序
[root@DESKTOP-AKD562M Fund.Supervision.Manager]# dotnet publish
创建mkdir /home/ybjk/FSM这个目录下的文件
[root@DESKTOP-AKD562M publish]# pwd
/root/Fund.Supervision.Manager/Fund.Supervision.API/bin/Release/net8.0/publish
复制到/home/ybjk/FSM目录下
Chmod +x Fund.Supervision.API
[root@DESKTOP-AKD562M FSM]# vim appsettings.json
{
“Logging”: {
“LogLevel”: {
“Default”: “Information”,
“Microsoft.AspNetCore”: “Warning”
}
},
“AllowedHosts”: “*”,
“urls”:“http://0.0.0.0:5000”
}
执行./Fund.Supervision.API
在VSCode的扩展插件中,搜索并且安装Nuget Package Manager扩展插件
使用ctrl + shift + p
输入> nuget ,在下拉框中选择>Nuget Package Manager:Add Package
获取版本失败修改/root/.vscode-server/extensions/jmrog.vscode-nuget-package-manager-1.1.6/out/src/actions/add-methods/fetchPackageVersions.js
node_fetch_1.default(${versionsUrl}${selectedPackageName}/index.json.toLowerCase(),
安装C#和C# Dev Kit插件
发布后开放到局域网内appsettings.json
“Kestrel”: {
“Endpoints”: {
“Http”: {
“Url”: “http://0.0.0.0:5000”
}
}
},文章来源地址https://www.toymoban.com/news/detail-860295.html

到了这里,关于VSCode开发ASP.NET WEBAPI环境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Asp.net core Webapi 如何执行定时任务?

    在计算机系统中,定时执行一些后台任务是很常见的场景,比如定时发送邮件、备份数据等等。 那么,.NET 技术如何通过编程灵活地实现项目里复杂的自定义任务呢? 如果是 Windows 生态,通常来说,可以有这些方式: 编写一个程序,通过 Windows 内置的任务计划来定时执行。

    2024年02月04日
    浏览(46)
  • ASP.NET core WebApi Cors跨域解决

    我用了最新版的Asp.net webapi ,在csdn上面搜跨域如何解决的时候,发现csdn上面对于.NET技术讨论不是很多。没办法,只能面向官方文档和GitHub编程了。 前面两个已经放弃维护了,我们就不用了。用最新的webApi 我们引入了最新的api后可以在官方网址上查看文档(有些地址是gitH

    2024年04月29日
    浏览(55)
  • 探索ASP.NET Framework WebAPI的简介与应用

    1.1-什么是WebAPI? WebAPI是一种用开发系统接口、设备接口API的技术,基于Http协议,请求和返回格式默认是Json格式。比WCF简单、更通用;比WebService更节省流量,更简洁。 1.2-WebAPI的特点? Action方法直接返回对象,专注于数据 更符合Restful的风格 有利于独立于IIS部署 Action可以直

    2024年02月14日
    浏览(48)
  • Asp.NET Core WebAPI 入门学习笔记,超详细

    WebAPI 是一种传统的方式,用于构建和暴露 RESTUI风格的Web服务。它提供了丰富的功能和灵活性,可以处理各种HTTP请求,并支持各种数据格式,如JSON、XML等。 WebAPI使用控制器(Controllers)和动作方法(ActionMethods)的概念、通过路由配置将请求映射到相应的方法上。 开发人员可以使用

    2024年04月24日
    浏览(71)
  • .net 温故知新【17】:Asp.Net Core WebAPI 中间件

    到这篇文章为止,关于.NET \\\"温故知新\\\"系列的基础知识就完结了,从这一系列的系统回顾和再学习,对于.NET core、ASP.NET CORE又有了一个新的认识。 不光是从使用,还包括这些知识点的原理,虽然深入原理谈不上,但对于日常使用也够了,我想的是知其然,知其所以然。 在实际

    2024年01月18日
    浏览(55)
  • asp.net core webapi如何执行周期性任务

    新建asp.net core webapi项目,使用Nuget搜索安装Quartz包。 注意:定时执行时间格式,参考连接:https://www.cnblogs.com/wudequn/p/8506938.html 在IIS中找到这个站点所用的程序池,点击“高级设置…” 在打开的列表中更改以下设置: 回收——固定时间间隔(分钟) 改为 0 ——虚拟/专用内存

    2024年02月13日
    浏览(46)
  • .net 温故知新【11】:Asp.Net Core WebAPI 入门使用及介绍

    在Asp.Net Core 上面由于现在前后端分离已经是趋势,所以asp.net core MVC用的没有那么多,主要以WebApi作为学习目标。 我使用的是VS2022, .Net 7版本。 在创建界面有几项配置: 配置Https 启用Docker 使用控制器 启用OpenAPI支持 不使用顶级语句 其中配置Https 是WebApi是否使用https协议,启

    2024年02月07日
    浏览(42)
  • ASP.NET CORE WEBAPI 登录 JWT 鉴权 ,接口权限验证

    介绍 当今Web开发中,API的使用越来越广泛,而API的安全性也变得越来越重要。其中,JWT(JSON Web Token)鉴权和授权是一种常见的解决方案。 本篇文章将会介绍JWT鉴权和授权的原理、实现方式以及注意事项。 什么是JWT? JWT是一种基于JSON格式的开放标准(RFC7519),用于在网络

    2023年04月21日
    浏览(62)
  • ASP.NET Core WebAPI如何获得远程文件返回文件流给前端?

      项目采用的是前后端分离的模式,后端使用ASP.NET Core WebAPI方式,将文件流返回给前端。   前端采用的是Vue技术栈,采用的是axios调用后端接口。前端无法获得fileName需要修改后端ASP.NET Core WebAPI项目中的【Startup.cs】文件。  修改ConfigureServices方法中的AddCors。   代码示例:

    2024年02月15日
    浏览(51)
  • ASP.NET Core 8.0 WebApi 从零开始学习JWT登录认证

    我一起写后端Api我都是直接裸连的,但是现在为了规范一些,我还是打算上一个JWT功能 ASP.NET Web API 2系列(四):基于JWT的token身份认证方案 Jwt-dotnet github 选好了模板,就进去看看号了,42M的下载量已经很高了,一般来说,只要超过500k的下载量,基本就是一个稳定的代码仓库了

    2024年04月09日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包