使用https访问Flask后端接口

文章介绍了如何将一个基础的Flask项目改造为支持HTTPS和域名访问。首先,通过普通Flask部署只能实现IP+port访问,然后通过添加SSL证书并使用pyOpenSSL库,实现了使用域名通过HTTPS进行访问。不过,启用SSL后,无法再通过IP+port方式访问。
摘要由CSDN通过智能技术生成

本次主要是记述使用https去访问Flask后端接口。最初的时候仅仅使用普通的Flask部署后端,只能实现IP+port的简单访问,但是对应https访问以及使用域名访问都不能够实现,于是在网上寻找解决办法,现在记下,为以后方便翻阅。

(留有笔记使用,新手上路,请多关照。😊

1 正常的Flask项目

   1.1 例程

# pip install Flask
from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run()
    # 如果是在服务器端运行,建议还是加上Ip
    # app.run(host = '10.0.24.11')  # 这里的10.0.24.11是购买的服务器的内外IP,可以通过公网IP+端口访问

   1.2 运行以及测试

 能够使用IP+port,但是域名+port不行

2 使用SSL后的Flask项目

   2.1 例程

 这里的liuserver.top_nginx是SSL证书存在的文件夹,需要以.crt(好像.pem也行)和.key为后缀的文件(注意传入顺序不要反,先.crt后.key):

ssl_context = ("liuserver.top_nginx/liuserver.top_bundle.crt", "liuserver.top_nginx/liuserver.top.key")  # 不要反,传入顺序反了,就回出现错误。

'''
使用之前需要安装pyOpenSSL:
pip install pyOpenSSL
'''
# pip install Flask
from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello():
    return "Hello World!"

if __name__ == "__main__":
    app.run(ssl_context = ("liuserver.top_nginx/liuserver.top_bundle.crt", "liuserver.top_nginx/liuserver.top.key"))

    # 如果是在服务器端运行,建议还是加上Ip
    # 这里的10.0.24.11是购买的服务器的内网IP,可以通过公网IP+端口访问
    # app.run(host = '10.0.24.11', ssl_context = ("liuserver.top_nginx/liuserver.top_bundle.crt", "liuserver.top_nginx/liuserver.top.key"))  

   2.2 运行和测试

 能使用域名访问(https://域名:port),但是此时无法使用IP+port访问。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

B or D

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值