【发布时间】:2015-08-07 12:04:24
【问题描述】:
我正在尝试使用此代码检查页面上的访问次数。 我的浏览器是 firefox v 39。 不知何故,计数没有增加。 谁能告诉我这里的问题是什么?
import os
import webapp2
import jinja2
import re
from google.appengine.ext import db
from functions import check_secure_val,make_secure_val
temp_dir = os.path.join(os.path.dirname(__file__),'templates')
jinja_env = jinja2.Environment(loader = jinja2.FileSystemLoader(temp_dir), autoescape = True)
class Handler(webapp2.RequestHandler):
def write(self,*a,**az):
self.response.write(*a,**az)
def render_template(self,template,**params):
t = jinja_env.get_template(template)
return t.render(params)
def render_page(self, template, **az):
self.write(self.render_template(template,**az))
class MainHandler(Handler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
visits = 0
visit_cookie_str = self.request.cookies.get('visits')
if visit_cookie_str:
cookie_val = check_secure_val(visit_cookie_str)
if cookie_val:
visits = int(cookie_val)
visits += 1
new_cookie_val = make_secure_val(str(visits))
self.response.headers.add_header('Set-Cookie', 'visits=%s' % new_cookie_val)
if visits > 100:
self.write("You are the best ever!")
else:
self.write("You've been here %s times!" % visits)
app = webapp2.WSGIApplication([('/', MainHandler)], debug=True)
【问题讨论】:
-
您为什么要尝试通过添加标头来设置 cookie,而不是使用 available methods?
-
我是一个新手,正在努力适应 Web 开发。你有我可以看的例子吗?
标签: python google-app-engine cookies jinja2