iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >用Python写一个简单的api接口
  • 461
分享到

用Python写一个简单的api接口

python后端flask 2023-10-08 21:10:13 461人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

python框架有很多,例如:flask,Django,Fastapi 等。本文将使用 Flask 来编写 API 接口。 安装Flask 首先,您需要安装 Flask: pip install fl

python框架有很多,例如:flaskDjango,Fastapi 等。本文将使用 Flask 来编写 API 接口。

安装Flask

首先,您需要安装 Flask:

pip install flask

写主程序

接下来,我们可以创建一个名为 app.py 的文件,在其中编写 Flask 应用程序代码:

from flask import Flask, requestapp = Flask(__name__)@app.route('/api', methods=['GET'])def api():    name = request.args.get('name')    if name:        return "Hello, " + name    else:        return "Hello, World!"if __name__ == '__main__':    app.run(debug=True)

运行代码

Python app.py

在浏览器中访问 Http://localhost:5000/api,应该会返回 “Hello, World!”。
如果向该 URL 添加参数,例如 http://localhost:5000/api?name=YourName,则会返回 “Hello, YourName”。

我们还可以给它添加一个简单的token验证

以下代码来给 API 接口添加一个简单的 token 验证:

from flask import Flask, requestapp = Flask(__name__)@app.route('/api', methods=['GET'])def api():    token = request.args.get('token')    if token != 'secret_token':        return "Invalid token", 401    name = request.args.get('name')    if name:        return "Hello, " + name    else:        return "Hello, World!"if __name__ == '__main__':    app.run(debug=True)

在上面的代码中,我们添加了一个 token 参数,并在该参数不为 secret_token 时返回一个 “Invalid token” 的错误响应(HTTP 状态代码 401)。
在实际生产环境中,应该使用更强大的身份验证方法,而不是仅仅使用简单的 token,但在本例中可以作为一个简单的示例。
在生产环境中,您应该使用更复杂的身份验证方法,例如:OAuth2,Jwt 等。

在使用 Flask 的情况下,您可以使用第三方库,例如 Flask-OAuthlib 或 Flask-JWT-Extended 来实现身份验证。

下面是使用 Flask-JWT-Extended 实现身份验证的示例代码:

from flask import Flask, requestfrom flask_jwt_extended import (    JWTManager, jwt_required, create_access_token,    get_jwt_identity)app = Flask(__name__)app.config['JWT_SECRET_KEY'] = 'secret-key'jwt = JWTManager(app)@app.route('/login', methods=['POST'])def login():    username = request.JSON.get('username', None)    passWord = request.json.get('password', None)    if username != 'test' or password != 'test':        return {'message': 'Bad username or password'}, 401    # identity is a simple string, like a username    access_token = create_access_token(identity=username)    return {'access_token': access_token}, 200@app.route('/api', methods=['GET'])@jwt_requireddef api():    current_user = get_jwt_identity()    return "Hello, " + current_userif __name__ == '__main__':    app.run(debug=True)

在上面的代码中,我们定义了两个路由:/login 和 /api。在 /login 中,我们检查用户名和密码,如果正确,则创建一个 JWT 访问令牌并将其返回给用户。在 /api 中,我们使用 jwt_required 装饰器来确保该 API 只能被拥有 JWT 令牌的用户访问。

在实际生产环境中,应该使用更复杂的身份验证方法,例如:OAuth2,JWT 等。另外,还需要仔细考虑 JWT 秘密密钥的安全性,以防止任何恶意用户恢复或篡改 JWT 令牌。

为了确保身份验证过程的安全性,还应该在客户端使用 https 安全套接字层 (SSL/TLS) 连接到 API 接口,以防止数据在网络中被窃取。

请注意,这仅是一个简单的 JWT 身份验证示例,在生产环境中,可能需要更复杂的验证方法。因此,请确保在使用 JWT 或任何其他身份验证方法之前,完全了解其安全性,以确保你的 API 接口不会受到攻击。

来源地址:https://blog.csdn.net/qq_39653624/article/details/128991400

--结束END--

本文标题: 用Python写一个简单的api接口

本文链接: https://www.lsjlt.com/news/425695.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 用Python写一个简单的api接口
    python框架有很多,例如:Flask,Django,FastAPI 等。本文将使用 Flask 来编写 API 接口。 安装Flask 首先,您需要安装 Flask: pip install fl...
    99+
    2023-10-08
    python 后端 flask
  • Python写一个简单的api接口的实现
    python框架有很多,例如:Flask,Django,FastAPI 等。本文将使用 Flask 来编写 API 接口。 安装Flask 首先,您需要安装 Flask: pip i...
    99+
    2023-02-14
    Python api接口 Python api
  • Python实现简单的API接口
    代码实现# coding:utf-8 import json from urlparse import parse_qs from wsgiref.simple_server import make_server # 定义函数,参数...
    99+
    2023-01-31
    接口 简单 Python
  • 如何用PHP编写简单的api数据接口
    目录一、编写接口所需几样工具或软件(均是win7+64位)二、安装后台开发环境三、正式编写接口四、总结一、编写接口所需几样工具或软件(均是win7+64位) 1.phpStudy、S...
    99+
    2024-04-02
  • Python+Flask编写一个简单的行人检测API
    目录前提条件实验环境项目结构主要代码运行结果前提条件 1.了解Python语言,并会安装第三方库 2.了解Python Web Flask框架 3.了解PyTorch深度学习框架 实...
    99+
    2024-04-02
  • 使用Python实现一个简单的接口服务
    使用Python实现一个简单的接口服务,可以通过get、post方法请求该接口,拿到响应数据。创建一个api_server.py文件,添加代码如下: import flask, json from flask import reques...
    99+
    2023-01-31
    接口 简单 Python
  • 用Python编写一个简单的Http S
    原文地址:Write a simple HTTP server in Python http://www.acmesystems.it/python_httpd 例子中源码: https://github.com/tanzi...
    99+
    2023-01-31
    简单 Python Http
  • 用Python写一个简单公众号
      前言:虽然简单,但是稍稍还是有点可取的地方的,终于可以有一个可以作为项目放在自己的github上了T_T,一个好项目一定是可拔插好扩展的,离好项目至少60%吧,以后再进一步完善了。   说实话,有一个微信公众号还是蛮方便的,可以将一些自...
    99+
    2023-01-31
    公众 简单 Python
  • 基于Python编写一个简单的端口扫描器
    目录1、需要的库2、获取一个 host 地址3、循环所有的端口4、完整脚本端口扫描是非常实用的,不止用在信息安全方面,日常的运维也用得到。这方面的工具也不要太多,搞过 CTF 的朋友...
    99+
    2024-04-02
  • 如何用python写一个简单的find命
        对一个运维来说可能会经常去查找目录下的一些文件是否存在,最常用的就是find命令,它不仅可以查找文件也可以查找目录,find命令用法查找文件[root@node1 opt]# find /usr/ -type f -name df/...
    99+
    2023-01-31
    如何用 简单 python
  • 如何使用Python写一个简单的JSONParser
    本篇内容主要讲解“如何使用Python写一个简单的JSONParser”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用Python写一个简单的JSONParser”吧!JSON Token...
    99+
    2023-07-06
  • 写一个简单的webserver
    基于 Python3 写的极简版 webserver。用于学习 HTTP协议,及 WEB服务器 工作原理。笔者对 WEB服务器 的工作原理理解的比较粗浅,仅是基于个人的理解来写的,存在很多不足和漏洞,目的在于给大家提供一个写 webser...
    99+
    2023-01-31
    简单 webserver
  • 教你使用Python写一个简单的JSONParser
    目录引言JSON TokenizerJSON Parser引言 最近在学习 Python 的正则表达式内容,我看的是官方的文档,在文档的最后有一个例子,勾起了我的兴趣。它是用正则表达...
    99+
    2023-05-14
    Python JSONParser 简单 JSONParser
  • 怎么使用Python写一个简单的JSONParser
    JSON TokenizerJSON 的词法分析,我主要是参考上面这个截图里面的方式,自己写了一个简单的示例。写得比较简单,应该说它只能支持 JSON 的一个简单子集。这里 TOKEN 的种类,参考了 https://json.org,不过...
    99+
    2023-05-14
    Python
  • 用python写一个简单的倒计时软件
    模块:time import time count = 0 a = int(input('time:')) while (count < a): count_now = a - count print(cou...
    99+
    2023-01-31
    倒计时 简单 软件
  • 如何用Python写一个简单的Web框架
    如何用Python写一个简单的Web框架,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、概述在Python中,WSGI(Web Server Gateway ...
    99+
    2023-06-17
  • 怎么用Python编写一个简单的游戏
    本篇内容介绍了“怎么用Python编写一个简单的游戏”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在这个系列中,我们要用不同的编程语言编写相...
    99+
    2023-06-15
  • 如何用Python写一个简单的通讯录
    目录用Python写一个简单的通讯录一、构思1、定义空列表和一个空字典来存储 2、定义功能选项3、添加通讯录功能4、 循环,调用所有的函数功能二、整体项目演示用Python写一个简单...
    99+
    2024-04-02
  • Python编写一个简单计算器
    一个计算器最主要的功能是加减乘除,那么用 Python 可以怎样实现呢 #!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2018/1/22 22:29 # @Author ...
    99+
    2023-01-31
    计算器 简单 Python
  • 怎么利用python写api接口
    这篇文章主要讲解了“怎么利用python写api接口”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么利用python写api接口”吧!一、操作步骤导入:import flask,json实...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作