1. post接口
#!usr/bin/env python
# -*- coding: utf-8 -*-
#!文件类型: python
#!创建时间: 2020/7/23 19:54
#!作者: SongBin
#!文件名称: api.py
#!简介: post API接口编写
import json
import re
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)))
json_str = request_body.decode('utf-8') # byte 转 str
json_str = re.sub('\'', '\"', json_str) # 单引号转双引号, json.loads 必须使用双引号
json_dict = json.loads(json_str) # (注意:key值必须双引号)
print(json_dict["name"])
print(json_dict["age"])
return [json.dumps(json_dict)]
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()
postman 接口验证
问题:
解决方法:
2. 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(
接口验证:
更多内容请访问:IT源点
注意:本文归作者所有,未经作者允许,不得转载