python开发接口
Posted xuzhongtao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python开发接口相关的知识,希望对你有一定的参考价值。
享一段代码,开发了3个接口:
1、上传文件
2、查看所有文件
3、下载文件
使用python开发,需要安装flask模块,使用pip install flask安装即可,代码量特别少,就能实现,加上注释总共35行代码,特别的简单,代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
import flask,os,time
from flask import request,send_from_directory,jsonify
app = flask.Flask(__name__)#创建一个app,代表这个web服务
@app.route(‘/get_file‘,methods=[‘get‘])
def get_file():
#下载文件接口
filename = request.values.get(‘fname‘,None)
#获取需要下载的文件名
if filename:#如果获取到的文件名话
if os.path.isfile(filename):#判断是否是一个文件
#返回要下载的文件
return send_from_directory(‘.‘,filename,as_attachment=True)
else:
return jsonify("msg":"文件不存在!")
else:
return jsonify(‘msg‘:‘文件名不能为空‘)
@app.route(‘/files‘,methods=[‘get‘])
def file_list():
#获取文件列表接口
files = os.listdir(‘.‘)#获取当前目录下所有文件
new_files = [f for f in files if os.path.isfile(f)]
#三元运算符,把是文件的放到list中
return jsonify("files":new_files)
@app.route(‘/upload‘,methods=[‘post‘])
def upload():
#上传文件接口
f = request.files.get(‘file_name‘,None)
if f:
t = time.strftime(‘%Y%m%d%H%M%S‘)#获取当前时间
new_file_name = t+f.filename#给文件重命名,防止有重复文件覆盖
f.save(new_file_name)#保存文件
return jsonify("code":"ok")
else:
return jsonify("msg":"请上传文件!")
app.run(debug=True,port=8888)#启动这个web服务
|
以上是关于python开发接口的主要内容,如果未能解决你的问题,请参考以下文章