输出上的Python WSGI错误

时间:2015-04-30 04:50:56

标签: python mod-wsgi wsgi

我的python已经变得非常生疏,因为我已经使用了很长一段时间而且我遇到了一个我无法弄清楚的问题。

python程序应接受网页发送的表单数据,并将一些JSON响应代码返回给它。一切正常,除非发送数据:

def application(environ, start_response):
    """ Process the form data, spit out the reponse """

    # code here extracts the form 
    # data and the response code is 
    # stored in info

    # everything done, output now
    output(environ, start_response, info)


def output(environ, start_response, info):

    # debug
    print >> environ['wsgi.errors'], "BACK TO THE BROWSER"

    feedback = json.dumps(info)

    # debug
    print >> environ['wsgi.errors'], feedback

    status = "200 OK"
    headers = [('Content-Type', 'application/json; charset=UTF-8'), ('Content-Length', str(len(feedback)))]
    start_response(status, headers)
    return [feedback]

错误日志显示:

  

...
  [wsgi:错误] ...回到浏览器

     

[wsgi:error] ... {"错误":[1430360477881,1430233459050]}

     

[wsgi:error] ... mod_wsgi(pid = 1654):处理WSGI脚本' / tmp / mod_wsgi-localhost:8000:0 / htdocs /'时发生异常。

     

[wsgi:error] ... TypeError:' NoneType'对象不可迭代
  ...

好的,Python抱怨它希望可迭代的东西是None。但是Python在这个函数中抱怨哪个可迭代? (请注意,我在没有任何框架/模块的情况下直接使用mod_wsgi。)

1 个答案:

答案 0 :(得分:2)

您需要返回回复:

return output(environ, start_response, info)