flask接口开发-急用版

介绍

flask是一个使用python编写的轻量级web应用框架,让我们可以使用python快速实现一个网站或者api服务。

运用场景:
flask框架实现的web应用类型:博客应用,聊天应用、仪表盘、RESTAPI、管理页面、邮件服务等。

安装

安装:pip install Flask

接口要素

  1. 接口地址:域名、路径
  2. 方式
  3. 请求参数:请求头、入参
  4. 接口业务逻辑
  5. 响应:格式:文本、json、xml、html

简单示例

# 导包
from flask import Flask

# 固定格式 实例化
app = Flask(__name__)

# 路由
@app.route("/index",methods=["GET"])
def index():
    return "hello"


if __name__ == '__main__':
# 启动服务
    app.run()

返回响应结果的不同类型

返回文本

@app.route("/index",methods=["GET"])
def index():
    return "hello"

返回html

from flask import Flask, render_template

@app.route("/index", methods=["GET"])
def index():
    return render_template('index.html')

要点:
index.html需要放在templates文件夹下
导包需要导入render_template

返回json

from flask import Flask, render_template,jsonify

@app.route("/json", methods=["GET"])
def json():
    return jsonify({
        "name":"ltx",
        "role":"admin"
    })

获取请求参数

get方法

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <h1>这是一个html页面</h1>
    <form action="http://127.0.0.1:5000/reg" method="get">
        用户名:<input name="name">
        <br>
        密码:<input  type="password" name="pwd">
        <br>
        <input type="submit">
    </form>

</body>
</html>
@app.route("/reg", methods=["GET"])
def reg():
    data = request.args
    print(data)
    return jsonify({
        "code": 200,
        "msg": "success"
    })

接口业务逻辑

@app.route("/reg", methods=["GET"])
def reg():
    data = request.args
    print("请求数据:{}".format(data))
    name= data["name"]
    pwd=data["pwd"]
    if len(name)>4 and len(pwd)>6:
        return jsonify({
            "code": 200,
            "msg": "注册成功"
        })
    else:
        return jsonify({
            "code": 200,
            "msg": "注册失败,用户名需大于4位或密码需大于6位"
        })

要点:jsonify返回中文时,在web实现为编码。解决:
在app实例化后,新增一行配置app.config['JSON_AS_ASCII'] = False

获取请求参数

post方法 :form表单

data = request.form
print("请求数据:{}".format(data))
name= data["name"]
pwd=data["pwd"]

post方法 :json格式入参

@app.route("/login", methods=["POST"])
def login():
    data = request.json
    print("请求数据:{}".format(data))
    print(data["name"])
    print(data["pwd"])
    return jsonify({
        "code": 200,
        "msg": "登录成功"
    })

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 221,135评论 6 514
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,317评论 3 397
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 167,596评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,481评论 1 296
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,492评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,153评论 1 309
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,737评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,657评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,193评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,276评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,420评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,093评论 5 349
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,783评论 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,262评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,390评论 1 271
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,787评论 3 376
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,427评论 2 359

推荐阅读更多精彩内容