我试图数据库查询保存到一个cookie,因为我需要在每一页上的结果。当硬编码的到期最新到代码一切正常,但是当我更换一个动态的“第二天”期满硬编码的日期,它给我以下错误:GAE的Python - 保存数据库查询到的cookie
self.response.headers.add_header(str('Set-Cookie'), str('shops=%s; path=/; expires=%s') % shoplist expire_string)
^
SyntaxError: invalid syntax
我也试图用response.set_cookie方法,但为什么我决定用下面的代码去这并不能在所有的工作,那就是:
class CookieHandler(webapp2.RequestHandler):
def get(self):
shoplist = Shop.all().filter('active = ', True).order('abbrev')
expire_date = datetime.datetime.now() + datetime.timedelta(days=1)
expire_string = expire_date.strftime('%a, %d %b %Y %H:%M:%S GMT')
self.response.headers.add_header(str('Set-Cookie'), str('shops=%s; path=/; expires=%s') % shoplist expire_string)
UPDATE 给出有关内容的一些详细信息 - 它是数据库中所有商店名称的查询。该查询用于每个页面上都可见的搜索框上的自动完成功能。
你一定要明白,有人可能只是修改了cookie,并获得完全控制你的数据库,对不对? – 2013-02-24 14:49:20
真的吗?结果仅用于填充自动完成功能,然后必须重新查询数据库。我不知道那里有这样的风险。这将如何工作? – Vincent 2013-02-24 15:06:11
什么是不具有浏览器的每一次新的页面加载查询数据库的最佳做法? – Vincent 2013-02-24 15:09:53