python——flask常见接口开发(简单案例)
原创 大蛇王 发布于2019-01-24 11:34:06 阅读数 5208 收藏
展开

版本:python3.5+

模块:flask

目标:开发一个只接受get方法的接口,接受参数为name和age,并返回相应内容。

from flask import Flask,request
    import json
     
    app=Flask(__name__)
     
    # 只接受get方法访问
    @app.route("/test_1.0",methods=["GET"])
    def check():
        # 默认返回内容
        return_dict= {'return_code': '200', 'return_info': '处理成功', 'result': False}
        # 判断入参是否为空
        if request.args is None:
            return_dict['return_code'] = '5004'
            return_dict['return_info'] = '请求参数为空'
            return json.dumps(return_dict, ensure_ascii=False)
        # 获取传入的params参数
        get_data=request.args.to_dict()
        name=get_data.get('name')
        age=get_data.get('age')
        # 对参数进行操作
        return_dict['result']=tt(name,age)
     
        return json.dumps(return_dict, ensure_ascii=False)
     
    # 功能函数
    def tt(name,age):
        result_str="%s今年%s岁" %(name,age)
        return result_str
     
    if __name__ == "__main__":
        app.run(debug=True)

本机pycharm运行后如下:

使用postman工具发送请求到接口地址 127.0.0.1:5000/test_1.0

结果如下:

2.如果接口改成只支持post方法访问,代码如下:

from flask import Flask,request
    import json
     
    app=Flask(__name__)
     
    # 只接受POST方法访问
    @app.route("/test_1.0",methods=["POST"])
    def check():
        # 默认返回内容
        return_dict= {'return_code': '200', 'return_info': '处理成功', 'result': False}
        # 判断传入的json数据是否为空
        if request.get_data() is None:
            return_dict['return_code'] = '5004'
            return_dict['return_info'] = '请求参数为空'
            return json.dumps(return_dict, ensure_ascii=False)
        # 获取传入的参数
        get_Data=request.get_data()
        # 传入的参数为bytes类型,需要转化成json
        get_Data=json.loads(get_Data)
        name=get_Data.get('name')
        age=get_Data.get('age')
        # 对参数进行操作
        return_dict['result']=tt(name,age)
     
        return json.dumps(return_dict, ensure_ascii=False)
     
    # 功能函数
    def tt(name,age):
        result_str="%s今年%s岁" %(name,age)
        return result_str
     
    if __name__ == "__main__":
        app.run(debug=True)

使用postman测试接口:

简单的接口开发大致就是这样了。
————————————————
版权声明:本文为CSDN博主「大蛇王」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/t8116189520/article/details/86623320

python——flask常见接口开发(简单案例)的更多相关文章

  1. Python flask模块接口开发学习总结

    引言 Flask 是一个简单且十分强大的Python web 框架.它被称为微框架,“微”并不是意味着把整个Web应用放入到一个Python文件,微框架中的“微”是指Flask旨在保持代码简洁且易于扩 ...

  2. 基于Python的WEB接口开发与自动化测试 pdf(内含书签)

    基于Python的WEB接口开发与自动化测试 目录 目 录O V目 录章 Python 学习必知 ................................................... ...

  3. Python学习之==>接口开发

    一.开发接口的作用 1.在别的接口没有开发完成的时候可以模拟一些接口以便测试已经开发完成的接口,例如假的支付接口,模拟支付成功.支付失败. 2.了解接口是如何实现的:数据交互.数据返回 3.开发给别人 ...

  4. 在线支付接口之PHP支付宝接口开发简单介绍

    php100:92:在线支付接口之PHP支付宝接口开发 支付接口一般是第三方提供的代收款.付款的平台,可以通过支付接口帮助企业或个人利用一切可以使用的支付方式.常见支付平台:支付宝.快钱.云网支付.财 ...

  5. [ Python ] Flask 基于 Web开发 大型程序的结构实例解析

    作为一个编程入门新手,Flask是我接触到的第一个Web框架.想要深入学习,就从<FlaskWeb开发:基于Python的Web应用开发实战>这本书入手,本书由于是翻译过来的中文版,理解起 ...

  6. python使用WSGI接口实现简单网页

    Python Web 介绍 Python的Web服务器分为服务器程序和应用程序.服务器程序负责接收客户端的请求发送给应用程序,应用程序负责处理请求返回给服务器程序.为了方便应用程序的开发,我们把常用的 ...

  7. app接口的简单案例 和一些总结

    例一: 通过接口获取一篇文章.接口需要传入文章的id,通过sql语句向数据库查询文章的内容,然后以json的格式echo出即可,即:安卓或IOS工程师获取通过接口获取到了json格式的数据,在做进一步 ...

  8. Flask入门之开发简单登陆界面

    涉及知识点: render_template() redirect():注意def的函数不要使用这个Python关键字 url_for():可以传参数给动态路由 动态路由 # Sample.py fr ...

  9. 学习python-20191230(1)-Python Flask高级编程开发鱼书_第04章_应用、蓝图与视图函数

    视频06: 1.自动导包快捷键——默认为alt + enter 键组合          选中的字符由小写变为大写——Ctrl + Shift + U键组合 2.DataRequired()——防止用 ...

随机推荐

  1. TensorFlow.ZC尝试

    1.资料: https://github.com/protocolbuffers/protobuf/releases https://pythonprogramming.net/introductio ...

  2. java 访问数据库公共类

    package com.javaweb.mvc; import java.sql.*; /** * @author 公共数据访问类 * * Statement 和 PreparedStatement之 ...

  3. 测试sigaction重启动标识

    #include <stdio.h>#include <unistd.h>#include <signal.h>#include <string.h># ...

  4. Zabbix的history相关数据表数据太大,执行表分区操作过程

    一.查询zabbix数据库大小 mysql> select table_schema, concat(truncate(sum(data_length)/1024/1024,2),' mb') ...

  5. Vue(一)环境搭建、创建项目

    1.安装node和npm 因为node已经有npm,所以直接安装node,配置环境变量 官网地址:http://nodejs.cn/download/ 2.查看node是否安装成功,输入名nde -v ...

  6. 使用pycharm开发web——django2.1.5(五)表单和通用视图

    看了刘江老师教程这么多天,卧槽,我才发现他也曾跻身于行伍之间,interesting 刘老师这波讲解很到位,告诉你如何编写单例视图的时候忽然告诉你,其实不用这么麻烦,我们有通用视图,那些总是要做相似的 ...

  7. Java没有引用传递机制,C#有。

    Java没有引用传递机制,C#有: public class Obj { private Integer myValue; public Integer getMyValue() { return m ...

  8. java中拦截器与过滤器之间的区别

    过滤器,是在java web中,你传入的request,response提前过滤掉一些信息,或者提前设置一些参数,然后再传入servlet或者struts的 action进行业务逻辑,比如过滤掉非法u ...

  9. Python 解LeetCode:23. Merge k Sorted Lists

    题目描述:把k个排序的链表组成的列表合并成一个排序的链表 思路: 使用堆排序,遍历列表,把每个列表中链表的头指针的值和头指针本身作为一个元素放在堆中: 第一步中遍历完列表后,此时堆中最多会有n个元素, ...

  10. 19牛客暑期多校 round2 H 01矩阵内第二大矩形

    题目传送门//res tp nowcoder 目的 给定n*m 01矩阵,求矩阵内第二大矩形 分析 O(nm)预处理01矩阵为n个直方图,问题转换为求n个直方图中的第二大矩形.单调栈计算,同时维护前二 ...