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. spring 机制 扫描包

    控制器示例 扫描包注解代码 @SpringBootApplication(scanBasePackages = {"cn.maxhou.*"}) 引号内为包名,支持*通配符 为什么 ...

  2. eNSP——ARP及ProxyARP

    原理: ARP (Address Resolution Protocol)是用来将IP地址解析为MAC地址的协议.ARP表项可以分为动态和静态两种类型.动态ARP是利用ARP广播报文,动态执行并自动进 ...

  3. 洛谷 题解 P1220 【关路灯 】

    搜索 传参 inline void DFS(int now,int l,int r,int cnt,int sum,int k) /* now为当前点 l为左端点 r为右端点 cnt为当前耗电量 su ...

  4. jupyter notebook 常用快捷操作

    Shift-Enter 执行当前cell,并自动跳到下一个cell Ctrl-Enter 执行当前cell,执行后不自动调转到下一个cell DD 删除当前的cell L 为当前的cell加入line ...

  5. Nginx04---编译安装

    原文:https://www.cnblogs.com/zhang-shijie/p/5294162.html 一:基介绍 官网地址www.nginx.org,nginx是由1994年毕业于俄罗斯国立莫 ...

  6. pandas合并excel文件

    现在有多个excel 文件,需要对其进行合并 import pandas as pd path='' list1=[] #save data data=pd.read_excel(path,dtype ...

  7. 和HTTP相关的web服务器内容

    一台web服务器可以搭建多个独立域名的网站,也可以作为通信路径上的中转服务器提升传输效率. 1. 用单台虚拟主机实现多个域名 多个域名解析后对应的ip地址相同,需要在Host首部中包含完整的主机名或者 ...

  8. Kubernetes---Pod笔记

    ⒈pod的理解     将多个容器镜像融合在一起,共享网络命名空间及容器卷 ⒉pod的分类 自助式podv          不是被控制器管理的pod,它一旦死亡不会被人给拉起来. 控制器管理的pod ...

  9. 2.安装阿里yum源

    1.删除自带的yum源:#cd /etc/yum.repos.d/#rm -rf *   2.配置远程yum源:wget -O /etc/yum.repos.d/CentOS-Base.repo ht ...

  10. std::string与char*之临时缓冲区

    std::string与char*之临时缓冲区 原文:https://blog.csdn.net/hsshh1988/article/details/80689330 c++文件读取流程如下: ifs ...