对Python实现简单的API接口实例讲解


Posted in Python onDecember 10, 2018

get方法

代码实现

# coding:utf-8
 
import json
from urlparse import parse_qs
from wsgiref.simple_server import make_server
 
 
# 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
def application(environ, start_response):
 # 定义文件请求的类型和当前请求成功的code
 start_response('200 OK', [('Content-Type', 'text/html')])
 # environ是当前请求的所有数据,包括Header和URL,body,这里只涉及到get
 # 获取当前get请求的所有数据,返回是string类型
 params = parse_qs(environ['QUERY_STRING'])
 # 获取get中key为name的值
 name = params.get('name', [''])[0]
 no = params.get('no', [''])[0]
 
 # 组成一个数组,数组中只有一个字典
 dic = {'name': name, 'no': no}
 
 return [json.dumps(dic)]
 
 
if __name__ == "__main__":
 port = 5088
 httpd = make_server("0.0.0.0", port, application)
 print "serving http on port {0}...".format(str(port))
 httpd.serve_forever()

请求实例

对Python实现简单的API接口实例讲解

post方法

代码实现

# coding:utf-8
 
import json
from wsgiref.simple_server import make_server
 
 
# 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
def application(environ, start_response):
 # 定义文件请求的类型和当前请求成功的code
 start_response('200 OK', [('Content-Type', 'application/json')])
 # environ是当前请求的所有数据,包括Header和URL,body
 
 request_body = environ["wsgi.input"].read(int(environ.get("CONTENT_LENGTH", 0)))
 request_body = json.loads(request_body)
 
 name = request_body["name"]
 no = request_body["no"]
 
 # input your method here
 # for instance:
 # 增删改查
 
 dic = {'myNameIs': name, 'myNoIs': no}
 
 return [json.dumps(dic)]
 
 
if __name__ == "__main__":
 port = 6088
 httpd = make_server("0.0.0.0", port, application)
 print "serving http on port {0}...".format(str(port))
 httpd.serve_forever()

请求实例

对Python实现简单的API接口实例讲解

疑问

怎么实现请求的路径限制?

怎么限制接口调用方的headers?

以上这篇对Python实现简单的API接口实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
深入解析Python的Tornado框架中内置的模板引擎
Jul 11 Python
Python网络爬虫出现乱码问题的解决方法
Jan 05 Python
创建pycharm的自定义python模板方法
May 23 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
Feb 26 Python
在Python中实现函数重载的示例代码
Dec 12 Python
python获取依赖包和安装依赖包教程
Feb 13 Python
pandas分组聚合详解
Apr 10 Python
Python连接mysql数据库及简单增删改查操作示例代码
Aug 03 Python
python安装cx_Oracle和wxPython的方法
Sep 14 Python
详解修改Anaconda中的Jupyter Notebook默认工作路径的三种方式
Jan 24 Python
Python3压缩和解压缩实现代码
Mar 01 Python
python 实现的截屏工具
May 08 Python
python中dir()与__dict__属性的区别浅析
Dec 10 #Python
python分块读取大数据,避免内存不足的方法
Dec 10 #Python
Python 文本文件内容批量抽取实例
Dec 10 #Python
Python中作用域的深入讲解
Dec 10 #Python
python实现根据文件关键字进行切分为多个文件的示例
Dec 10 #Python
Python文件常见操作实例分析【读写、遍历】
Dec 10 #Python
一篇文章搞懂Python的类与对象名称空间
Dec 10 #Python
You might like
建立文件交换功能的脚本(三)
2006/10/09 PHP
php 远程关机操作的代码
2008/12/05 PHP
php5.3 注意事项说明
2013/07/01 PHP
PHP实现的大文件切割与合并功能示例
2018/04/10 PHP
原生javascript实现隔行换色
2015/01/04 Javascript
有效提高JavaScript执行效率的几点知识
2015/01/31 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
2015/10/23 Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
2016/05/10 Javascript
巧用Vue.js+Vuex制作专门收藏微信公众号的app
2016/11/03 Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
2017/06/08 Javascript
浅析JS中什么是自定义react数据验证组件
2018/10/19 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
2019/09/03 Javascript
解决vue cli使用typescript后打包巨慢的问题
2019/09/30 Javascript
Javascript地址引用代码实例解析
2020/02/25 Javascript
原生js+canvas实现贪吃蛇效果
2020/08/02 Javascript
原生js实现点击按钮复制内容到剪切板
2020/11/19 Javascript
Python中MySQL数据迁移到MongoDB脚本的方法
2016/04/28 Python
Python数据结构与算法之图的广度优先与深度优先搜索算法示例
2017/12/14 Python
详解Python图像处理库Pillow常用使用方法
2019/09/02 Python
win10下python2和python3共存问题解决方法
2019/12/23 Python
解决Python在导入文件时的FileNotFoundError问题
2020/04/10 Python
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
详解Canvas实用库Fabric.js使用手册
2019/01/07 HTML / CSS
Canvas获取视频第一帧缩略图的实现
2020/11/11 HTML / CSS
Free People中国官网:波西米亚风格女装服饰
2016/08/30 全球购物
New Balance俄罗斯官方网上商店:购买运动鞋
2020/03/02 全球购物
2019年分享net面试的经历和题目
2016/08/07 面试题
请说出这段代码执行后a和b的值分别是多少
2015/03/28 面试题
毕业典礼演讲稿
2014/05/13 职场文书
公司证明怎么写
2014/09/22 职场文书
2015年文秘个人工作总结
2015/10/14 职场文书
美德少年主要事迹材料
2015/11/04 职场文书
2016春季小学开学寄语
2015/12/03 职场文书
如何理解Vue前后端数据交互与显示
2021/05/10 Vue.js
Python语言内置数据类型
2022/02/24 Python
Java 通过手写分布式雪花SnowFlake生成ID方法详解
2022/04/07 Java/Android