python3的start_response怎么调用
发布时间:2019-09-01 12:52
举个例子:
# the application object. 可以使用其他名字,
# 但是在使用mod_wsgi 时必须为 "application"
def application( environ, start_response):
# 函数接受两个参数:
# environ :包含有CGI 式环境变量的字典,由server负责提供内容
# start_response:由server提供的回调函数,其作用是将状态码和响应头返回给server
# 构造响应体,以可迭代字符串形式封装
response_body = 'The request method was %s' % environ['REQUEST_METHOD']
# HTTP 响应码及消息
status = '200 OK'
# 提供给客户端的响应头.
# 封装成list of tuple pairs 的形式:
# 格式要求:[(Header name, Header value)].
response_headers = [('Content-Type', 'text/plain'),
('Content-Length', str(len(response_body)))]
# 将响应码/消息及响应头通过传入的start_reponse回调函数返回给server
start_response(status, response_headers)
# 响应体作为返回值返回
# 注意这里被封装到了list中.
return [response_body]