码迷,mamicode.com
首页 > 其他好文 > 详细

Flask Restful Small Demo

时间:2016-08-06 11:25:32      阅读:134      评论:0      收藏:0      [点我收藏+]

标签:

参考:

http://www.pythondoc.com/flask-restful/first.html

什么是Rest

  • Client-Server:服务器端与客户端分离。
  • Stateless(无状态):每次客户端请求必需包含完整的信息,换句话说,每一次请求都是独立的。
  • Cacheable(可缓存):服务器端必需指定哪些请求是可以缓存的。
  • Layered System(分层结构):服务器端与客户端通讯必需标准化,服务器的变更并不会影响客户端。
  • Uniform Interface(统一接口):客户端与服务器端的通讯方法必需是统一的。
  • Code on demand(按需执行代码?):服务器端可以在上下文中执行代码或者脚本?
 
GET 
获取资源的信息
POST
创建新资源  
PUT 
更新资源
DELETE
删除资源 

那么先用flask 建立一个小小的Demo,假使你已经安装了flask   window –cmd- pip install flask

from flask import Flask

app=Flask(__name__)

@app.route("/")

def index():
    return "hello everybody"
    
if __name__==__main__:
    app.run(debug=True)

在CMD命令中输入  python test1.py

会弹出 http://127.0.0.1:5000 。在浏览器中输入即可,这是一个简单的flask  应用就访问成功。

先用flask 建立一个小服务,首先是get方法获取

这里的数据库暂时不用,直接用Python的列表就行数据的增删改查

GET查询

# -*- coding: utf-8 -*-
from flask import Flask,jsonify

app=Flask(__name__)

persons=[{id:1,name:张三,address:河南省},{id:2,name:李斯,address:湖北省}]

@app.route(/api/list/personss,methods=[GET])

def Get_tasks():
    results=jsonify({person:persons})
    return results
    
if __name__==__main__:
    app.run(debug=True)

稍微用了一个JSON序列化

通过ID获取某一列数据

# -*- coding: utf-8 -*-
from flask import Flask,jsonify
app=Flask(__name__)
@app.route(/api/list/person/<int:ids>,methods=[get])
def get_tasks_id(ids):
    return st
if __name__==__main__:
    app.run(debug=True)

再通过POST方法进行提交数据

from flask import request

@app.route(/todo/api/v1.0/tasks, methods=[POST])
def create_task():
    if not request.json or not title in request.json:
        abort(400)
    task = {
        id: tasks[-1][id] + 1,
        title: request.json[title],
        description: request.json.get(description, ""),
        done: False
    }
    tasks.append(task)
    return jsonify({task: task}), 201

然后我却使用了 Flask 的视图函数来定义所有的路由。当然这也行,但是总感觉不是 那么一回事。

Resource 基础类是flask提供的。

好累。再叙。

Flask Restful Small Demo

标签:

原文地址:http://www.cnblogs.com/leizhizhiyuyali/p/5743453.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!