Python实现简单的API接口--wsgiref模块--解决:**self.status.split(' ',1)[0], self.bytes_sent**报错

post方法,接口接收数据

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2020-05-11
# @Author : MLP
# @Project :

import json
from wsgiref.simple_server import make_server


# 定义函数,参数是函数的两个参数,都是python本身定义的,默认就行了。
def application(environ, start_response):

# 定义文件请求的类型和当前请求成功的code
status = '200 OK'
response_headers = [('Content-type', 'text/plain')]
start_response(status, response_headers)

# environ是当前请求的所有数据,包括Header和URL,body
request_body = environ["wsgi.input"].read(int(environ.get("CONTENT_LENGTH", 0)))
request_body = json.loads(request_body)

# 此处继续扩展处理数据的代码
hospital = request_body["分院"]
environment = request_body["环境"]

# 此处继续扩展处理数据的代码

dic = {'分院': hospital, '环境': environment}

# 此处加上.encode('utf-8'),顺便解决了报错:“self.status.split(' ',1)[0], self.bytes_sent”的问题
    return [json.dumps(dic, ensure_ascii=False).encode('utf-8')]


if __name__ == "__main__":
port = 6088
hosts = "127.0.0.1"
httpd = make_server(hosts, port, application)
print('服务已启动...接口地址:{}:{}'.format(hosts, port))
httpd.serve_forever()


使用postman请求一下,试试

 


 

 
posted @ 2020-05-11 14:37  偶神采飞扬  阅读(852)  评论(0编辑  收藏  举报