zoukankan      html  css  js  c++  java
  • Flask-RESTful接口开发学习笔记一:实现简单的GET请求

    1、首先安装需要依赖的第三方包:

      (1):Flask

      (2):Flask-RESTful

    如何安装就不在啰嗦,pip也好,下载到本地再安装也好,看你随意。

    2、我们先实现GET请求。

    Q:什么是GET请求。

    A:简单来说,GET请求,就是根据传过来的参数条件,来获取服务端的数据信息,不会改变服务端的数据。更直接的,GET请求,拼成链接直接浏览器就可以访问。

    3、接下来实现我们的GET请求。

      (1):首先导包,并实例化对像:

      

    from flask import Flask, jsonify
    from flask.ext.restful import reqparse, Api, Resource
    
    app = Flask(__name__)
    app.debug = True
    api = Api(app)
    

      (2):模拟创建一些我们需要的数据。

      

    students = {
        1: {'name': 'lily', 'age': '22'},
        2: {'name': 'jerry', 'age': '23'},
        3: {'name': 'joe', 'age': '34'}
    }
    

      (3):接下来创建parser对像,解释一下:它是提供简单并且统一的访问 Flask 中flask.request 对象里的任何变量的入口

      

    parser = reqparse.RequestParser()
    parser.add_argument('id', type=int, required=True, help='ID不能为空。')
    

      上面第二行代码解释一下:他是给我们的ID加上了一些限制条件,type是类型,required是指他不能为空,help是如果出现了限制条件之外的,则返回这个提示。

      (4):请求方法:

      

    class get_stu(Resource):
        def get(self):
            data= parser.parse_args()
            id = data.get('id')
            if id == 0:
                return jsonify(students)
            if id > max(students.keys()):
                return jsonify({'msg': 'ID超出范围'})
            return jsonify(students.get(id))
    

      请求的类需要继承Resource,定义一个get的方法,则是指get请求,data是去获取前端传过来的数据,为什么用这样的方式获取,前文已经说明。我们这里定义了,如果id为0,则返回所有的学习,如果id超过了范围,则给与相应的提示。如果id为某学生id,则返回该学生的信息。

      (5):添加路径与运行:

      

    api.add_resource(get_stu, '/get/stu/')
    
    if __name__ == '__main__':
        app.run(host='192.168.1.154', port=1234)
    

      直接运行,就可以查实现我们的GET获取数据的功能了。

      上几张成功的图。

      

  • 相关阅读:
    粤语·简约学习笔记
    Linux的网卡由eth0变成了eth1
    RedHat 更新CentOS Yum源
    Lamp 搭建
    像淘宝、京东这样的大型电商网站服务器构架完全部署方案
    完成静态服务器——Node.js摸石头系列之四
    实现使用Websocket通讯的聊天室——Node.js摸石头系列之六
    Node.js摸石头系列目录
    Aptana studio 3 修改配色方案
    Node.js 的安装和控制台命令——Node.js摸石头系列之一
  • 原文地址:https://www.cnblogs.com/Alin-2016/p/7428612.html
Copyright © 2011-2022 走看看