URLのリクエストパラメータを取得する方法
自分用メモ
webapp.RequestHandlerを使用するテスト
例:http://localhost:8080/?ID=3535 とかでアクセスすると、各内容を表示するだけのスクリプト。
self.request.get()は、クエリパラメータを複数持っていても(&で繋げたやつ)抜き出してくれるので便利っつーか、webappの内容把握してないのでよく読むのが先だろ>俺
import wsgiref.handlers from google.appengine.ext import webapp class MainPage(webapp.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/plain' self.response.out.write('uri = '+self.request.uri+'\n') self.response.out.write('scheme = '+self.request.scheme+'\n') self.response.out.write('host = '+self.request.host+'\n') self.response.out.write('path = '+self.request.path+'\n') self.response.out.write('query = '+self.request.query+'\n') try: ID = int(self.request.get('ID')) self.response.out.write('"ID" = ' + str(ID) + '\n') except (TypeError, ValueError): self.response.out.write('"ID" = none\n') def main(): application = webapp.WSGIApplication( [ ('/', MainPage), ], debug=True) wsgiref.handlers.CGIHandler().run(application) if __name__ == "__main__": main()
実行結果
uri = http://localhost:8080/?ID=3535 scheme = http host = localhost:8080 path = / query = ID=3535 "ID" = 3535
参考にさせていただきました
http://d.hatena.ne.jp/hamatsu1974/20080422/1208802967