flask开启https服务支持
目录
一、背景
二、开启https支持
三、自签名
1、安装openssl
2、验证安装
3、自签名
四、编写代码
五、访问https接口
一、背景
最近在做自动化业务,需要兼容现在主流的框架开发的前端页面,于是到github找到了几个项目,clone下来项目并将相关的包下载完成后,整体打包放到了内网运行,这时候发现这个项目依赖的一个包进行了联网发送请求的行为,于是就先把文件从外网下载好,自己写一个接口,改一下那个源码调用自己的接口就好了。用flask写好后,尝试了一下,发现那个包只支持https接口的调用,于是就有了这篇文章。
二、开启https支持
要想从http升级到hhtps需要进行ssl签名,签名是可以自签名,但只用测试,真正生成环境还是要走正规流程的。本文介绍下如何自签名,方便大家开发测试(本文编写是在基于linux环境下)。
三、自签名
1、安装openssl
sudo yum install openssl
2、验证安装
openssl version
3、自签名
自签名后生成一个ssl证书和私钥文件,注意生成后会保存到当前路径下。
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365# 若内存不够,可修改4096为2048或1024
# 最后加上-nodes参数,秘钥不进行加密,省内存
# 最后加上-verbose参数,可以在出错时打印出错的文件
四、编写代码
上述步骤没问题后,我们可以得到key.pem和cert.pem两个文件,分别是私钥和ssl证书文件。接着我们就可以使用flask写https接口服务了。
from flask import Flask
from werkzeug.serving import run_simpleapp = Flask(__name__)@app.route('/httpsTest')
def httpsTest():return '成功开启https支持了'if __name__ == '__main__':# 这里使用werkzeug启动服务,设置ssl相关参数run_simple('localhost', 9999, ssl_content('key.pem', 'cert.pem'))
五、访问https接口
打开浏览器输入地址https://localhost/httpsTest回车查看返回,没问题就ok了!
相关文章:
flask开启https服务支持
目录 一、背景 二、开启https支持 三、自签名 1、安装openssl 2、验证安装 3、自签名 四、编写代码 五、访问https接口 一、背景 最近在做自动化业务,需要兼容现在主流的框架开发的前端页面,于是到github找到了几个项目,clone下来项目并…...
CNN处理图片
In [5]: 123456789101112131415161718192021222324252627282930313233import tensorflow as tfimport matplotlib.pyplot as pltimport numpy as np# 平滑均值滤波#KaTeX parse error: Expected EOF, got _ at position 14: \text {filter_̲{arg}np.}.full (sha…...
【Bootstrap V4系列】学习入门教程之 组件-表单(Forms)
Bootstrap V4系列 学习入门教程之 组件-表单(Forms) 表单(Forms)一、Overview二、Form controls 表单控件2.1 Sizing 尺寸2.2 Readonly 只读2.3 Readonly plain text 只读纯文本 三、Checkboxes and radios 复选框和单选框3.1 Def…...
图像来源:基于协同推理的双视角超声造影分类隐式数据增强方法|文献速递-深度学习医疗AI最新文献
Title 题目 Image by co-reasoning: A collaborative reasoning-based implicit data augmentation method for dual-view CEUS classification 图像来源:基于协同推理的双视角超声造影分类隐式数据增强方法 01 文献速递介绍 结合了B型超声(BUS&…...
MySQL性能分析工具:SHOW PROCESSLIST
概述 以下是一份详细的 MySQL SHOW PROCESSLIST 使用教程,帮助您监控和分析数据库当前活动,快速定位性能问题资料已经分类整理好,喜欢的朋友自取:https://pan.quark.cn/s/f52968c518d3 1. 命令基本作用 SHOW PROCESSLIST 显示当…...
Linux网络编程day8本地套接字
本地套接字 利用cs模型实现本地套接字完成进程间通信 对比网络编程TCP C/S模型,注意以下几点 1、int socket(int domain, int type, int protocol); domain-->AF_INET改为AF_UNIX , type都可写SOCK_STREAM/SOCK_DGRAM2、地址结构 sockaddr_in -->sockadd…...
使用 React Native实现鸿蒙开发的详细方案
一、环境准备 1. 基础环境要求 操作系统:Windows 10/11 或 macOS (建议版本最新)Node.js: v16.x 或更高版本npm: v8.x 或更高版本Java JDK: 11 或更高版本DevEco Studio: 3.1 或更高版本 (鸿蒙官方IDE)2. 安装 DevEco Studio 从华为开发者官网下载安装时选择以下组件: Harmo…...
WebRTC流媒体传输协议RTP点到点传输协议介绍,WebRTC为什么使用RTP协议传输音视频流?
通过上一章《WebRTC工作原理详细介绍、WebRTC信令交互过程和WebRTC流媒体传输协议介绍》,我们知道WEBRTC在完成 SDP 协商和 ICE 候选交换信令后,双方就可以建立 RTP 流,开始传输音视频数据,这时,RTP 数据包就通过在 IC…...
【Unity笔记】PathCreator使用教程:用PathCreator实现自定义轨迹动画与路径控制
在Unity开发过程中,角色移动、摄像机动画、轨道系统、AI巡逻等功能中,路径控制是常见又复杂的需求之一。如何优雅、高效地创建路径并控制对象沿路径运动,是游戏开发、动画制作乃至工业仿真中的关键问题。 在这篇文章中,我将介绍一…...
生产安全管理系统标杆
生产安全不容小视,防患于未然是企业安全生产的基石。好的安全预防系统能让隐患产生最初就被扼杀在摇篮里。国内一些好的生产安全防范系统也有很多,今天我们主要介绍一下众联心安这款产品。 安全生产管理,目标制度管理,风险隐患管理,应急安全管理,设备设…...
temu采购自养号全流程解析:从账号搭建到安全下单的技术闭环
temu 自养号采购下单技术是一个精细的过程,需要从多个方面进行考虑和操作,其核心在于通过技术手段模拟真实用户行为,构建独立、安全的账号环境以确保账号的安全性、真实性和采购下单的成功率。以下是对该技术的详细解析 1. 账号准备 手机号…...
MySQl 数据库操作
目录 一、MySQL 数据库介绍 二、MySQl 库操作 1. 系统数据库 2. 数据库操作 (1)创建数据库 (2)数据库命名规则 (3)选择数据库 (4)查看数据库 (5)删除…...
OpenHarmony launcher开发——删除dock栏
开发环境 OpenHarmony 5.0.0 代码修改 效果...
zst-2001 历年真题 设计模式
设计模式 - 第1题 a 设计模式 - 第2题 一个产品可以产生多个就是抽象,一个就是工厂 比如这样 第二题a是意图 bc: d 设计模式 - 第3题 b 设计模式 - 第4题 类图里全是builder,疯狂暗示 设计模式 - 第5题 aa 设计模式 - 第6题 只有工厂方法是创…...
Vue3 + Element Plus 动态表单实现
完整代码 <template><div class"dynamic-form-container"><el-formref"dynamicFormRef":model"formData":rules"formRules"label-width"auto"label-position"top"v-loading"loading"&g…...
QML AnimatedImage组件详解
目录 引言相关阅读基础知识:AnimatedImage核心属性与方法工程结构与示例展示工程结构示例1:可控制播放/暂停的AnimatedImage示例2:带进度条的AnimatedImage主界面整合(SwipeView滑动展示) 总结下载链接 引言 在UI开发…...
Ascend的aclgraph(2)_npu_backend中还有些什么秘密?
1 _npu_backend 文章还是从代码开始 import torch_npu, torchair config torchair.CompilerConfig() # 设置图下沉执行模式 config.mode "reduce-overhead" npu_backend torchair.get_npu_backend(compiler_configconfig) opt_model torch.compile(model, back…...
免布线视频桩:智慧城市停车降本增效的破局利器
在智慧城市建设的进程中,传统停车管理面临成本高、效率低、施工复杂等难题。而视频桩作为创新解决方案,以“免布线、智能化”为核心,正逐步改变这一局面。视频桩通过融合物联网与AI技术,实现自动化监测与数据实时管理,…...
Vulfocus靶场-文件上传-2
monstra 文件上传 (CVE-2020-13384) Monstra 是一个现代化的轻量级内容管理系统。它易于安装、升级和使用。 Monstra CMS 3.0.4版本中存在着一处安全漏洞,该漏洞源于程序没有正确验证文件扩展名。攻击者可以上传特殊后缀的文件执行任意PHP代…...
nvidia-smi 和 nvcc -V 作用分别是什么?
命令1:nvidia-smi 可以查看当前显卡的驱动版本,以及该驱动支持的CUDA版本。 命令2:nvcc -V 可以看到实际安装的CUDA工具包版本为 12.8 更详细的介绍,可以参考如下链接...
力扣刷题(第二十一天)
灵感来源 - 保持更新,努力学习 - python脚本学习 二叉树的最大深度 解题思路 这道题要求计算二叉树的最大深度,即从根节点到最远叶子节点的最长路径上的节点数。可以使用递归或迭代方法解决: 递归法(推荐)&#…...
AIOps 工具介绍
AIOps(智能运维)是通过人工智能技术优化IT运维流程的实践,其核心在于利用机器学习、大数据分析等技术实现运维自动化与智能化。以下从定义、核心价值、技术架构及工具等方面展开说明: 一、AIOps的定义与核心价值 AIOps࿰…...
4.3【LLaMA-Factory实战】教育大模型:个性化学习路径生成系统全解析
【LLaMA-Factory实战】教育大模型:个性化学习路径生成系统全解析 一、引言 在教育领域,传统"一刀切"的教学模式难以满足学生的个性化需求。本文基于LLaMA-Factory框架,详细介绍如何构建一个个性化学习路径生成系统,包…...
如何构建容器镜像并将其推送到极狐GitLab容器镜像库?
极狐GitLab 是 GitLab 在中国的发行版,关于中文参考文档和资料有: 极狐GitLab 中文文档极狐GitLab 中文论坛极狐GitLab 官网 构建容器镜像并将其推送到容器镜像库 (BASIC ALL) 在构建和推送容器镜像之前,您必须通过容器镜像库的身份验证。 …...
雷赛伺服L7-EC
1电子齿轮比: 电机圈脉冲1万 (pa11的值 x 4倍频) 2电机刚性: pa003 或者 0x2003 // 立即生效的 3LED显示: PA5.28 1 电机速度 4精度: PA14 //默认30,超过3圈er18…...
爬虫学习————开始
🌿自动化的思想 任何领域的发展原因————“不断追求生产方式的改革,即使得付出与耗费精力越来愈少,而收获最大化”。由此,创造出方法和设备来提升效率。 如新闻的5W原则直接让思考过程规范化、流程化。或者前端框架/后端轮子的…...
Shell 脚本编程详细指南:第五章 - 函数与参数传递
Shell 脚本编程详细指南:第五章 - 函数与参数传递 引言:函数在脚本工程化中的核心价值 函数是Shell脚本实现模块化编程的基石。本章将深入解析函数编程的各个方面,从基础定义到高级应用,助您构建可维护、可重用的脚本架构。我们…...
使用 docker 安装 nacos3.x
一、安装 nacos 1.拉取镜像 使用如下指令拉取镜像 docker pull nacos/nacos-server 拉取完成后,可以使用以下命令查看是否拉取到对应的镜像,默认拉取最新镜像 docker images 2.新建挂载文件目录 mkdir -p /home/ubuntu/nacos/conf/mkdir -p /home/…...
Docker的基础操作
docker是一个用Go语言实现的开源项目,可以让我们方便的创建和使用容器,docker将程序以及程序所有的依赖都打包到docker container,这样你的程序可以在任何环境都会有一致的表现,这里程序运行的依赖也就是容器就好比集装箱…...
权限控制模型全解析:RBAC、ACL、ABAC 与现代混合方案
权限控制模型全解析:RBAC、ACL、ABAC 与现代混合方案 在企业信息系统、SaaS 应用、安全平台中,权限控制模型是确保用户访问安全和功能隔离的基础架构设计之一。本文将系统性梳理常见的权限控制模型,包括 RBAC、ACL、ABAC、DAC、MAC、ReBAC 等…...
内存安全革命:工具、AI 与政策驱动的 C 语言转型之路
引言 在 CVE-2025-21298 等高危漏洞频发的背景下,内存安全已成为全球软件产业的核心议题。根据 CISA 最新数据,2024 年全球 72% 的网络攻击源于内存安全漏洞,而 C/C 代码贡献了其中 89% 的风险。这一严峻现实催生了技术革新的三重浪潮&#…...
电厂数据库未来趋势:时序数据库 + AI 驱动的自优化系统
在电力行业加速数字化与智能化转型的进程中,电厂数据库作为数据管理与应用的核心枢纽,正经历着深刻变革。时序数据库与 AI 技术的融合,正催生一种全新的自优化系统,为电厂设备全生命周期管理带来前所未有的效能提升与创新机遇。这…...
stm32 debug卡在0x1FFFxxxx
自己画的一个四轴飞机电路板,之前还能debug,改了一下mos管两端的电阻,还能正常下载,蓝牙接收也正常,但是debug出问题了,刚下载就自动运行,然后程序就在0x1FFFxxxx附近循环运行,这一块…...
什么是AI写作
一、AI写作简介 AI 写作正在成为未来 10 年最炙手可热的超级技能。已经有越来越多的人通过 AI 写作,在自媒体、公文写作、商业策划等领域实现了提效,甚至产生了变现收益。 掌握 AI 写作技能,不仅能提高个人生产力,还可能在未来的 …...
港大今年开源了哪些SLAM算法?
过去的5个月,香港大学 MaRS 实验室陆续开源了四套面向无人机的在线 SLAM 框架:**FAST-LIVO2 、Point-LIO(grid-map 分支) 、Voxel-SLAM 、Swarm-LIO2 **。这四套框架覆盖了单机三传感器融合、高带宽高速机动、长时间多级地图优化以…...
PostgreSQL 表空间占用分析与执行计划详解
PostgreSQL 表空间占用分析与执行计划详解 引言 在数据库管理和优化中,了解表占用的空间大小以及查询的执行计划是至关重要的。本文将详细介绍如何在 PostgreSQL 中查看普通表和分区表的空间占用情况,以及如何分析和解读执行计划。 一、查看表空间占用 …...
robotframe启动ride.py
我的双击ride.py会自动用pycharm打开,变成代码文件 解决方法:定位到ride.py所在文件夹(在anaconda的scripts里面),文件夹上方输入cmd 再输入该命令即可...
通过Linux系统服务管理IoTDB集群的高效方法
IoTDB是一款专为工业物联网领域设计的高性能时间序列数据库。在生产环境中,确保IoTDB集群的稳定运行至关重要。本文将介绍如何利用Linux系统服务来管理IoTDB集群,以实现高效的启动、监控和自动重启。 一、基本配置与环境需求 为了解决传统IoTDB启动方式…...
机器学习-数据集划分和特征工程
一.数据集划分 API函数: sklearn.model_selection.train_test_split(*arrays,**options) 参数: - arrays:多个数组,可以是列表,numpy数组,也可以是dataframe数据框等 - options:&…...
LDO与DCDC总结
目录 1. 工作原理 2. 性能对比 3. 选型关键因素 4. 典型应用 总结 1. 工作原理 LDO LDO通过线性调节方式实现降压,输入电压需略高于输出电压(压差通常为0.2-2V),利用内部PMOS管或PNP三极管调整压差以稳定输出电压。其结构简单…...
5 种距离算法总结!!
大家好!我是 我不是小upper~ 今天,咱们聚焦一个在机器学习领域极为关键、在实际项目中也高频使用的主题 ——距离算法。在机器学习的世界里,距离算法就像是一把 “度量尺”,专门用来衡量数据点之间的相似性或差异性。…...
【leetcode100】最长重复子数组
1、题目描述 给两个整数数组 nums1 和 nums2 ,返回 两个数组中 公共的 、长度最长的子数组的长度 。 示例 1: 输入:nums1 [1,2,3,2,1], nums2 [3,2,1,4,7] 输出:3 解释:长度最长的公共子数组是 [3,2,1] 。示例 2&…...
独立自主的网络浏览器——Ladybird
独立自主的网络浏览器——Ladybird 随着互联网技术的飞速发展,浏览器作为人们探索网络世界的窗口,其技术创新和安全措施至关重要。然而,市场上绝大多数浏览器都是基于现有的成熟引擎进行开发,如何创新突破,成为一个独…...
强化学习三大基本方法-DP、MC、TD
强化学习进阶 本文主要讲解 动态规划法(Dynamic Programming DP)蒙特卡洛法(Monte Carlo MC)时序差分法(Temporal Difference TD) 1. 动态规划法 1.1 动态规划概念 动态规划核心思想: 其核心…...
【数据结构】1. 时间/空间复杂度
- 第 95 篇 - Date: 2025 - 05 - 09 Author: 郑龙浩/仟墨 【数据结构 】 文章目录 数据结构 - 1 -了解数据结构与算法1 什么是数据结构2 什么是算法3 数据结构的重要性? 一 时间复杂度_空间复杂度1 时间复杂度① 表示方法② 推导大 O 的规则:③ **代码示例 ** 2 空…...
k8s存储类型:emptyDir、hostPath、nfs、pvc及存储类storageclass的静态/动态创建pv
Kubernetes存储类型详解 Kubernetes(K8s)提供了多种存储类型,满足不同的存储需求。这些存储类型包括 emptyDir、hostPath、nfs、PersistentVolumeClaim(PVC)以及存储类(StorageClass)的静态和动…...
TRAE 配置blender MCP AI自动3D建模
BlenderMCP - Blender模型上下文协议集成 BlenderMCP通过模型上下文协议(MCP)将Blender连接到Claude AI,允许Claude直接与Blender交互并控制Blender。这种集成实现了即时辅助的3D建模、场景创建和操纵。 1.第一步下载 MCP插件(addon.py):Blender插件,在…...
不拆机查看电脑硬盘型号的常用方法
要比较两个硬件的参数,首先要知道的是硬件准确的型号。不过,如硬盘这类硬件,一般都藏在电脑“肚子里”,拆下看费时又费力。那么,不拆机电脑硬盘型号怎么看呢?接下来,我们就来分享几种方法。 使…...
抖音 “碰一碰” 发视频:短视频社交的新玩法
在短视频社交的广阔天地里,抖音始终站在创新的前沿。2023 年,抖音重磅推出 “碰一碰” 功能,借助近距离通信技术,实现设备间视频的闪电分享,为短视频社交注入全新活力。本文将深入剖析这一功能背后的技术奥秘、丰富应用…...
learning ray之ray核心设计和架构
我们每天都在处理海量、多样且高速生成的数据,这对计算能力提出了前所未有的挑战。传统的单机计算模式在面对日益复杂的机器学习模型和大规模数据集时,往往显得力不从心。更重要的是,数据科学家们本应专注于模型训练、特征工程、超参数调优这…...