对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使用Srapy框架爬虫模拟登陆并抓取知乎内容
Jul 02 Python
Python程序运行原理图文解析
Feb 10 Python
安装python时MySQLdb报错的问题描述及解决方法
Mar 20 Python
解决Python requests库编码 socks5代理的问题
May 07 Python
python与字符编码问题
May 24 Python
简单了解python的break、continue、pass
Jul 08 Python
Django model update的多种用法介绍
Mar 28 Python
如何在python中写hive脚本
Nov 08 Python
基于python实现对文件进行切分行
Apr 26 Python
Python基于jieba, wordcloud库生成中文词云
May 13 Python
keras slice layer 层实现方式
Jun 11 Python
Jupyter安装拓展nbextensions及解决官网下载慢的问题
Mar 03 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
php number_format() 函数通过千位分组来格式化数字的实现代码
2013/08/06 PHP
php实现session自定义会话处理器的方法
2015/01/27 PHP
PHP中的多种加密技术及代码示例解析
2016/10/20 PHP
php array_pop 删除数组最后一个元素实例
2016/11/02 PHP
Laravel接收前端ajax传来的数据的实例代码
2017/07/20 PHP
php 数据结构之链表队列
2017/10/17 PHP
jquery下动态显示jqGrid以及jqGrid的属性设置容易出现问题的解决方法
2010/10/22 Javascript
jquery append()方法与html()方法的区别及使用介绍
2014/08/01 Javascript
Javascript中的作用域和上下文深入理解
2015/07/03 Javascript
Jquery easyui开启行编辑模式增删改操作
2016/01/14 Javascript
学习vue.js条件渲染
2016/12/03 Javascript
Vue 2.0在IE11中打开项目页面空白的问题解决
2017/07/16 Javascript
JS原生数据双向绑定实现代码
2017/08/14 Javascript
vue.js简单配置axios的方法详解
2017/12/13 Javascript
使用webpack打包koa2 框架app
2018/02/02 Javascript
vue项目中实现的微信分享功能示例
2019/01/21 Javascript
JS/CSS实现字符串单词首字母大写功能
2019/09/03 Javascript
一次微信小程序内地图的使用实战记录
2019/09/09 Javascript
JS如何实现在弹出窗口中加载页面
2020/12/03 Javascript
[01:15:29]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第三局
2016/03/04 DOTA
使用Python多线程爬虫爬取电影天堂资源
2016/09/23 Python
Python实现图片滑动式验证识别方法
2017/11/09 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
用CSS3实现无限循环的无缝滚动的实例代码
2017/07/04 HTML / CSS
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
Html5插件教程之添加浏览器放大镜效果的商品橱窗
2016/01/07 HTML / CSS
销售员自我评价怎么写
2013/09/19 职场文书
应届生会计求职信
2013/11/11 职场文书
档案接收函
2014/01/13 职场文书
写自荐信的注意事项
2014/03/09 职场文书
班长竞选演讲稿
2014/04/24 职场文书
查摆问题整改措施范文
2014/10/11 职场文书
个人职业及收入证明
2014/10/13 职场文书
幼儿园欢迎词范文
2015/01/26 职场文书
高一军训感想
2015/08/07 职场文书
《王者天下》第4季首话新剧照 4月9日正式开播
2022/04/07 日漫