当前位置: 首页 > news >正文

ASP .Net Core创建一个httppost请求并添加证书

ASP .Net Core创建一个httppost请求并添加证书

创建.net Core程序,使用自签名证书,可以处理https的get和post请求。

创建证书

创建自签名证书的流程可以在这里查看:

https://blog.csdn.net/GoodCooking/article/details/139815278

创建完毕后:
在这里插入图片描述

继续输入命令,创建.pfx 证书,

openssl pkcs12 -export -out myNameZhengShu\cert.pfx -inkey myNameZhengShu\key.pem -in myNameZhengShu\cert.pem

在这里插入图片描述输入密码123456,当然是看不到的啦

在这里插入图片描述在这里插入图片描述

一共是输入三次123456
最后生成cert.pfx 文件
在这里插入图片描述

配置.net Core

将证书放到.netCore的程序路径中
在这里插入图片描述

修改.netCore的程序的Program.cs 文件的内容

using System.Security.Cryptography.X509Certificates;var builder = WebApplication.CreateBuilder(args);// Add services to the container.
builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();var app = builder.Build();// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{app.UseSwagger();app.UseSwaggerUI();
}app.UseHttpsRedirection();app.UseAuthorization();app.MapControllers();// 配置 Kestrel 使用 SSL 证书
app.UseHttpsRedirection();
app.Use(async (context, next) =>
{var certificate = new X509Certificate2(Path.Combine(AppContext.BaseDirectory, "myNameZhengShu", "cert.pfx"),"123456");context.Connection.ClientCertificate = certificate;await next();
});app.Run();

重要的是这个,myNameZhengShu 是证书的路径,我这里是.exe程序的myNameZhengShu 的文件夹下,证书的密码是123456,证书的名称是cert.pfx

app.UseHttpsRedirection();
app.Use(async (context, next) =>
{var certificate = new X509Certificate2(Path.Combine(AppContext.BaseDirectory, "myNameZhengShu", "cert.pfx"),"123456");context.Connection.ClientCertificate = certificate;await next();
});

然后添加一个http的post请求,创建一个新的.cs文件并拷贝粘贴下面的内容:
访问方式是:https://localhost:7267/User?username=123
请求结果是:123, 你好,现在是:2024-06-20 22:46:01

using Microsoft.AspNetCore.Mvc;
namespace TSLServerTest.Controllers
{[ApiController][Route("[controller]")]public class UserController : ControllerBase{// POST请求的示例[HttpPost]public ActionResult<string> Post([FromQuery] string username){// 获取当前时间DateTime currentTime = DateTime.Now;// 构建返回的字符串string responseMessage = $"{username}, 你好,现在是:{currentTime.ToString("yyyy-MM-dd HH:mm:ss")}";return Ok(responseMessage);}}
}

验证证书生效

在这里插入图片描述

在post man中发送http请求发送不了

在这里插入图片描述https就可以哦
在这里插入图片描述

相关文章:

ASP .Net Core创建一个httppost请求并添加证书

ASP .Net Core创建一个httppost请求并添加证书 创建.net Core程序&#xff0c;使用自签名证书&#xff0c;可以处理https的get和post请求。 创建证书 创建自签名证书的流程可以在这里查看&#xff1a; https://blog.csdn.net/GoodCooking/article/details/139815278创建完毕…...

Redis入门篇

目录 传送门一、前言二、NoSQL1、ont only sql&#xff0c;特点&#xff1a;2、NoSQL的四大分类&#xff1a; 三、Redis概念四、五大数据类型: 传送门 SpringMVC的源码解析&#xff08;精品&#xff09; Spring6的源码解析&#xff08;精品&#xff09; SpringBoot3框架&#…...

变电站智能巡检机器人解决方案

我国拥有庞大的电网体系&#xff0c;变电站数量众多&#xff0c;且近年来快速增长。然而目前我国变电站巡检方式仍以人工为主&#xff0c;存在效率低下、监控不全面等问题。变电站通常是一个封闭的系统空间&#xff0c;设备种类繁多、占地面积广阔&#xff0c;这对巡检人员实时…...

Linux Kernel入门到精通系列讲解(QEMU-虚拟化篇) 2.5 Qemu实现RTC设备

1. 概述 上一章节起(5.4小节),我们已经把整个Naruto Pi都跑通了,从BL0到kernel再到Rootfs都通了,目前可以说已经具备学习Linux得基础条件,剩下得都只是添砖加瓦,本小节我们将添加RTC,如果你还没有添加RTC,你可以试试不添加RTC时,Linux的时间戳会很奇怪,加了RTC后,…...

【自动驾驶】通过下位机发送的加速度、角速度计算机器人在世界坐标系中的姿态

文章目录 原始代码全局变量定义逆平方根函数四元数解算函数理论解释四元数加速度计数据归一化计算方向余弦矩阵的第三行计算误差计算并应用积分反馈应用比例反馈积分陀螺仪数据,更新四元数归一化四元数更新姿态数据整体流程原始代码 #define SAMPLING_FREQ 20.0f // 采样频率…...

Python 设计模式(第2版) -- 第四部分(其他设计模式)

Python 设计模式(第2版) 最后介绍下其他设计模式。 模型—视图—控制器&#xff08;MVC&#xff09;-- 复合模式 根据 GoF 的定义&#xff0c;“复合模式将两个或更多模式组合成解决常见或普遍性问题的解决方案”。复合模式不是同时使用的一组模式&#xff0c;而是一个问题的…...

gitlab升级16.11.3-ee

背景 这是事后一段时间补充记录的博客。 升级目的&#xff1a;修补漏洞CVE-2024-4835 未经认证的威胁攻击者能够利用该漏洞在跨站脚本 (XSS) 攻击中&#xff0c;轻松接管受害者账户。 gitlab版本为14.6.2-ee升级至16.11.3-ee 思路 翻阅文档找升级方法及升级版本路径。使用…...

剑指offer 算法题(搜索二维矩阵)

剑指offer 第二题 去力扣里测试算法 思路一&#xff1a; 直接暴力遍历二维数组。 class Solution { public:bool searchMatrix(vector<vector<int>>& matrix, int target) {for (unsigned int i{ 0 }; i < matrix.size(); i){for (unsigned int j{ 0 };…...

SaaS平台数据对接为什么要选择API对接?

SaaS平台数据对接是指将一个或多个SaaS平台中的数据集成到其他应用或平台中的过程。在当前的数字化时代&#xff0c;企业越来越倾向于使用SaaS平台来管理他们的业务和数据。然而&#xff0c;这些数据通常散布在不同的SaaS平台中&#xff0c;这对于企业数据的整合和分析来说可能…...

力扣136. 只出现一次的数字

Problem: 136. 只出现一次的数字 文章目录 题目描述思路复杂度Code 题目描述 思路 由于题目要求使用线性时间复杂度和常量级的空间复杂度&#xff0c;再加上找重复元素这个特性&#xff0c;我们可以想到使用位运算来求解&#xff1a; 1.任何数与其本身异或得0&#xff0c;任何…...

重学java 74.Lombok的使用

少点心气&#xff0c;多点干劲 —— 24.6.18 一、lombok的安装使用 1.作用: 简化javabean开发 2.使用: a.下插件 ->如果是idea2022不用下载了,自带 b.导lombok的jar包 安装教程&#xff1a; http://t.csdnimg.cn/wq9MM c.修改设置 二、lombok的介绍 Lombok通过增加一…...

数据结构6---树

一、定义 树(Tree)是n(n>0)个结点的有限集。当n0时成为空树,在任意一棵非空树中: 1、有且仅有一个特定的称为根(Root)的结点; 2、当n>1时,其余结点可分为m(m>日)个互不相交的有限集T1、T2、...、 Tm&#xff0c;其中每一个集合本身又是一棵树&#xff0c;并且称为根的…...

一键制作,打造高质量的数字刊物

随着数字化时代的到来&#xff0c;数字刊物已经成为信息传播的重要载体。它以便捷、环保、互动性强等特点&#xff0c;受到了越来越多人的青睐。然而&#xff0c;如何快速、高效地制作出高质量的数字刊物&#xff0c;成为许多创作者面临的难题。今天&#xff0c;教大家一个制作…...

Java面试题:对比继承Thread类和实现Runnable接口两种创建线程的方法,以及它们的优缺点

Java 中创建线程有两种主要的方法&#xff1a;继承 Thread 类和实现 Runnable 接口。下面我将分别介绍这两种方法&#xff0c;并对比它们的优缺点。 继承 Thread 类 方法&#xff1a; 创建一个继承自 Thread 的子类。重写 Thread 类的 run 方法。创建子类的实例并调用 start…...

编译原理-各章典型题型+思路求解

第2章文法和语言习题 基础知识&#xff1a; 思路&#xff1a; 基础知识&#xff1a; 思路&#xff1a; 基础知识&#xff1a; 编译原理之 短语&直接短语&句柄 定义与区分_编译原理短语,直接短语,句柄-CSDN博客 思路&#xff1a; 题目&#xff1a; 基础解释&#xff1a…...

【绝对有用】C++ vector排序

在 C 中&#xff0c;有多种方法可以对向量&#xff08;即 std::vector&#xff09;进行排序。最常用的方法是使用标准库中的 std::sort 函数。以下是一些例子&#xff1a; 使用 std::sort 函数 std::sort 函数是标准库 <algorithm> 中的一个函数&#xff0c;可以对向量…...

linux——VScode安装

方法一&#xff1a;使用snap一键安装 Snap Store 是 Ubuntu、Debian、Fedora 和其他几个 Linux 发行版中的一个应用商店&#xff0c;提供了数千个应用程序和工具的安装。Snap Store 使用 Snap 包格式&#xff0c;这是一种通用的 Linux 软件包格式&#xff0c;使得在不同的 Lin…...

X-LoRA:高效微调 LoRA 系列,实现不同领域知识专家混合模型

&#x1f4dc; 文献卡 X-LoRA: Mixture of Low-Rank Adapter Experts, a Flexible Framework for Large Language Models with Applications in Protein Mechanics and Molecular Design作者: Eric L. Buehler; Markus J. BuehlerDOI: 10.48550/arXiv.2402.07148摘要:We report…...

基于卷积神经网络的目标检测

卷积神经网络基础知识 1.什么是filter 通常一个6x6的灰度图像&#xff0c;构造一个3*3的矩阵&#xff0c;在卷积神经网络中称之为filter,对&#xff16;x6的图像进行卷积运算。 2.什么是padding 假设输出图像大小为nn与过滤器大小为ff&#xff0c;输出图像大小则为(n−f1)∗(…...

Mysqld数据库管理

一.Mysqld数据库类型 常用的数据类型 int 整型 无符号[0-4294967296&#xff08;2的32次方&#xff09;-1]&#xff0c;有符号[-2147483648&#xff08;2的31次方&#xff09;-2147483647]float单精度浮点 4字节32位double双精度浮点 8字节64位char固定长度的字符类型…...

极客玩法:OpenClaw+Qwen3-14B控制智能家居实战

极客玩法&#xff1a;OpenClawQwen3-14B控制智能家居实战 1. 为什么选择OpenClaw控制智能家居&#xff1f; 去年装修新房时&#xff0c;我给自己定了个小目标&#xff1a;所有智能设备必须能通过自然语言控制。市面上的语音助手总让我觉得"差点意思"——要么响应慢…...

GG3M 项目独家原创理论:元模型的形式化结构

GG3M 项目独家原创理论&#xff1a;元模型的形式化结构本元模型是GG3M 贾子公理体系的形式化数学内核&#xff0c;是对全尺度复杂系统&#xff08;个人认知、企业经营、城市治理、国家战略、文明演化&#xff09;底层规律的顶层抽象&#xff0c;是 GG3M 所有子模型、应用场景、…...

PyTorch实战:用门控卷积(GConv)和转置门控卷积(TrGConv)搞定音频降噪(附完整代码)

PyTorch实战&#xff1a;用门控卷积&#xff08;GConv&#xff09;和转置门控卷积&#xff08;TrGConv&#xff09;构建高效音频降噪模型 音频降噪一直是信号处理领域的核心挑战之一。想象一下&#xff0c;你正在录制一段重要的语音备忘录&#xff0c;背景中却充斥着风扇的嗡嗡…...

Alpamayo-R1-10B保姆级教程:Linux服务器远程访问7860端口配置

Alpamayo-R1-10B保姆级教程&#xff1a;Linux服务器远程访问7860端口配置 1. 引言&#xff1a;为什么需要远程访问&#xff1f; 想象一下这个场景&#xff1a;你在本地电脑上部署了强大的Alpamayo-R1-10B自动驾驶模型&#xff0c;但每次想测试都得跑到服务器机房&#xff0c;…...

28 openclaw负载均衡实现:应对高并发场景的解决方案

背景/痛点在OpenClaw项目中&#xff0c;随着业务规模的扩大&#xff0c;单节点处理能力逐渐成为瓶颈。特别是在高并发场景下&#xff0c;如秒杀活动、实时数据推送等&#xff0c;如何合理分配负载、避免单点故障、提升整体吞吐量&#xff0c;成为架构设计的核心挑战。传统的负载…...

国内专业的铣打机厂家哪家专业

在制造业蓬勃发展的今天&#xff0c;铣打机作为轴类零件加工的关键设备&#xff0c;其性能和质量直接影响着生产效率和产品质量。面对市场上众多的铣打机厂家&#xff0c;该如何选择一家专业可靠的呢&#xff1f;今天就为大家介绍一家在行业内颇具口碑的企业——无锡通亚数控智…...

Neosegment库:面向七段数码管式NeoPixel的嵌入式驱动框架

1. Neosegment库概述&#xff1a;面向七段数码管式NeoPixel模块的嵌入式驱动框架Neosegment是一个专为Neosegment Digit模块设计的Arduino兼容嵌入式驱动库&#xff0c;其核心目标是将WS281x/SK6812系列智能LED的底层时序控制与七段数码管&#xff08;7-segment display&#x…...

Vivado Design Suite中BUFG优化策略与实战技巧

1. 理解BUFG的核心作用与设计痛点 在FPGA设计中&#xff0c;时钟信号就像人体神经系统中的电脉冲&#xff0c;需要快速、准确地传递到每个功能单元。BUFG&#xff08;全局时钟缓冲器&#xff09;就是Xilinx器件中专用的"信号放大器"&#xff0c;它能将时钟信号分配到…...

Cursor Pro功能突破解决方案:基于cursor-free-vip的完整技术指南

Cursor Pro功能突破解决方案&#xff1a;基于cursor-free-vip的完整技术指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reache…...

一站式AI应用开发:在PyTorch 2.8环境中集成Dify与Ollama部署大模型

一站式AI应用开发&#xff1a;在PyTorch 2.8环境中集成Dify与Ollama部署大模型 1. 企业级AI开发的新范式 想象一下这样的场景&#xff1a;你的开发团队需要在两周内上线一个智能客服系统&#xff0c;要求能理解专业术语、生成高质量回复&#xff0c;还要能与企业现有系统无缝…...