如何使用python迭代webapp RequestHandler中的所有请求头?

时间:2012-02-10 10:26:20

标签: python google-app-engine

我需要迭代所有请求标头对象并在App Engine中打印它。尝试使用循环时出错。怎么做到这一点?

class MainHandler(webapp.RequestHandler):
    def get(self):
        for e in self.request.headers:
            self.request.headers(e + "<br />")

我收到错误:AttributeError: EnvironHeaders instance has no __call__ method

2 个答案:

答案 0 :(得分:8)

错误位于self.request.headers(e + "<br />")行。您正尝试调用request.headers方法。

我查看在线帮助,发现self.request.headersdict类似对象。您可以登记https://developers.google.com/appengine/docs/python/gettingstarted/usingwebapp

要迭代headers,您可以使用self.request.headers.items()self.request.headers.keys()

答案 1 :(得分:1)

我认为你的意思是self.response.write()

class MainHandler(webapp.RequestHandler):
    def get(self):
        for e in self.request.headers:
            self.response.write(e + "<br />")