当前位置: 首页>>代码示例>>Python>>正文


Python Response.set_cookie方法代码示例

本文整理汇总了Python中webob.Response.set_cookie方法的典型用法代码示例。如果您正苦于以下问题:Python Response.set_cookie方法的具体用法?Python Response.set_cookie怎么用?Python Response.set_cookie使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在webob.Response的用法示例。


在下文中一共展示了Response.set_cookie方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: store

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
 def store(self, req):
     req.userid = self.get_userid(req)
     auth = AuthDomain.from_request(req, self)
     authorized = auth.without_lock
     add_cookie = None
     if authorized:
         add_cookie = auth.add_authorization()
     else:
         authorized, add_cookie = auth.authorize()
     if not authorized:
         if auth.has_users():
             resp = Response(
                 status=403,
                 body=open(os.path.join(here, 'login.html')).read())
         else:
             resp = exc.HTTPForbidden()
     elif 'getlink' in req.params:
         resp = Response(
             content_type='application/json',
             body=json.dumps(dict(url=auth.make_link())))
     else:
         resp = self.store_response(req, auth)
     if add_cookie:
         resp.set_cookie(add_cookie[0], add_cookie[1], max_age=datetime.timedelta(days=10 * 365))
     if not req.userid and req.cookies.get(self.auth_app.cookie_name):
         logger.debug('Invalid cookie: %r' % req.cookies.get(self.auth_app.cookie_name))
         ## Invalid cookie:
         resp.delete_cookie(self.auth_app.cookie_name)
     return resp
开发者ID:ianb,项目名称:webannotate,代码行数:31,代码来源:server.py

示例2: cookie_server

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def cookie_server(environ, start_response):
    request = Request(environ)
    if "the-cookie" in request.cookies:
        return Response(request.cookies["the-cookie"])(environ, start_response)
    else:
        response = Response(body="has your cookie")
        response.set_cookie("the-cookie", str(uuid.uuid4()))
        return response(environ, start_response)
开发者ID:imdeany,项目名称:webobtoolkit,代码行数:10,代码来源:test_quickstart.py

示例3: bare_app

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def bare_app(req):
    resp = Response('ok')
    if req.params.get('cookie') in ('secure', 'both'):
        resp.set_cookie('foo', 'v', secure=True)
    if req.params.get('cookie') in ('insecure', 'both'):
        resp.set_cookie('bar', 'v', secure=False)
    if req.params.get('cookie') == 'nonwebob':
        resp.headers['Set-Cookie'] = 'baz=v; httponly; secure; Path=/;'
    return resp
开发者ID:storborg,项目名称:maitai,代码行数:11,代码来源:test_securecookies.py

示例4: test_set_cookie_expires_is_None_and_max_age_is_int

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def test_set_cookie_expires_is_None_and_max_age_is_int():
    res = Response()
    res.set_cookie('a', '1', max_age=100)
    eq_(res.headerlist[-1][0], 'Set-Cookie')
    val = [ x.strip() for x in res.headerlist[-1][1].split(';')]
    assert len(val) == 4
    val.sort()
    eq_(val[0], 'Max-Age=100')
    eq_(val[1], 'Path=/')
    eq_(val[2], 'a=1')
    assert val[3].startswith('expires')
开发者ID:GdZ,项目名称:scriptfile,代码行数:13,代码来源:test_response.py

示例5: bare_app

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def bare_app(req):
    s = '\n'.join(['%s: %s' % (k, v)
                   for k, v in req.cookies.items()])
    resp = Response(s)

    key = req.path_info_pop()
    if key:
        val = req.path_info_pop()
        resp.set_cookie(key, val)

    return resp
开发者ID:storborg,项目名称:maitai,代码行数:13,代码来源:test_renamecookie.py

示例6: test_cookies

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def test_cookies():
    res = Response()
    res.set_cookie('x', u'\N{BLACK SQUARE}') # test unicode value
    eq_(res.headers.getall('set-cookie'), ['x="\\342\\226\\240"; Path=/']) # uft8 encoded
    r2 = res.merge_cookies(simple_app)
    r2 = BaseRequest.blank('/').get_response(r2)
    eq_(r2.headerlist,
        [('Content-Type', 'text/html; charset=utf8'),
        ('Set-Cookie', 'x="\\342\\226\\240"; Path=/'),
        ]
    )
开发者ID:GdZ,项目名称:scriptfile,代码行数:13,代码来源:test_response.py

示例7: set_cookie

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def set_cookie(req):
    cookie_parms = {'path': None}
    cookie_parms.update(dict((str(k), str(v)) for k, v in req.params.items()))
    name = cookie_parms.pop('name')
    value = cookie_parms.pop('value')
    if 'max-age' in cookie_parms:
        cookie_parms['max_age'] = int(cookie_parms.pop('max-age'))
    if 'expires' in cookie_parms:
        cookie_parms['expires'] = datetime.strptime(cookie_parms.pop('expires'), '%a, %d %b %Y %H:%M:%S GMT')
    resp = Response()
    resp.set_cookie(name, value, **cookie_parms)
    return resp
开发者ID:jean,项目名称:zope.testbrowser,代码行数:14,代码来源:wsgitestapp.py

示例8: test_set_cookie_expires_is_not_None_and_max_age_is_None

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def test_set_cookie_expires_is_not_None_and_max_age_is_None():
    import datetime
    res = Response()
    then = datetime.datetime.utcnow() + datetime.timedelta(days=1)
    res.set_cookie('a', '1', expires=then)
    eq_(res.headerlist[-1][0], 'Set-Cookie')
    val = [ x.strip() for x in res.headerlist[-1][1].split(';')]
    assert len(val) == 4
    val.sort()
    ok_(val[0] in ('Max-Age=86399', 'Max-Age=86400'))
    eq_(val[1], 'Path=/')
    eq_(val[2], 'a=1')
    assert val[3].startswith('expires')
开发者ID:GdZ,项目名称:scriptfile,代码行数:15,代码来源:test_response.py

示例9: test_merge_cookies_resp_is_wsgi_callable

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def test_merge_cookies_resp_is_wsgi_callable():
    L = []
    def dummy_wsgi_callable(environ, start_response):
        L.append((environ, start_response))
        return 'abc'
    res = Response()
    res.set_cookie('a', '1')
    wsgiapp = res.merge_cookies(dummy_wsgi_callable)
    environ = {}
    def dummy_start_response(status, headers, exc_info=None):
        eq_(headers, [('Set-Cookie', 'a=1; Path=/')])
    result = wsgiapp(environ, dummy_start_response)
    assert result == 'abc'
    assert len(L) == 1
    L[0][1]('200 OK', []) # invoke dummy_start_response assertion
开发者ID:GdZ,项目名称:scriptfile,代码行数:17,代码来源:test_response.py

示例10: hello_app_cookie

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
def hello_app_cookie(req):
    r = Response(charset='UTF-8')
    if 'name' in req.params:
        name = req.params['name']
        r.set_cookie('name', name)
    elif 'name' in req.cookies:
        name = req.cookies['name']
        #r.delete_cookie('name')
    else:
        return form_app
    r.unicode_body = u'Hello, %s!' % name

    r.conditional_response = True
    r.md5_etag()
    return r
开发者ID:iitwebdev,项目名称:lectures,代码行数:17,代码来源:5_webob_cookie.py

示例11: login

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
    def login(self, environ, start_response):
        req = Request(environ)
        if req.method == "GET":
            return Response("""
<form method="POST">
Username: <input type="text" name="username" />
<input type="submit" />
</form>""")(environ, start_response)
        username = req.POST['username']
        val = generate_cookie_value(username, get_secret(self.secret))
        res = Response()
        res.status = 304
        res.location = "/"
        res.set_cookie("__ac", val)
        return res(environ, start_response)
开发者ID:Aglafira,项目名称:libopencore,代码行数:17,代码来源:mock_opencore.py

示例12: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
 def __call__(self, environ, start_response):
     req = Request(environ)
     res = Response(cache_control='no-cache', pragma='no-cache')
     session = req.cookies.get(self.cookie_name, None)
     if session is None:
         session = gen_session()
         res.set_cookie(
             self.cookie_name, session,
             max_age=self.cookie_max_age,
             path='/')
     self.send_event(session, req)
     res.content_type = 'image/gif'
     del res.charset
     res.body = self._gif
     return res(environ, start_response)
开发者ID:joeywen,项目名称:zarkov,代码行数:17,代码来源:web_event.py

示例13: app

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
 def app(environ, start_response):
     req = Request(environ)
     res = Response()
     res.body =\
 ("""
 <html>
     <head><title>cookies</title></head>
     <body>
         <pre>Taste: [%s]</pre>
     </body>
 </html>
 """ % req.cookies.get('taste')).encode('ascii')
     if req.params.get('gimme'):
         # Set a new cookie.
         res.set_cookie('taste', 'yummy')
     return res(environ, start_response)
开发者ID:ktan2020,项目名称:legacy-automation,代码行数:18,代码来源:test_cookies.py

示例14: __call__

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
    def __call__(self, environ, start_response):
        """
        Главный обработчик HTTP событий
        """
        req = Request(environ)

        # Список вторичных обработчиков запросов
        # Для простоты регулярные выражения не используются
        routes = { '/cw': self.index,
                   '/cw/login': self.login,
                   '/cw/logout': self.logout,
                   '/cw/cards': self.cards,
                   '/cw/set_payment_card': self.set_payment_card,
                   '/cw/paybot/cards': self.paybot_cards }

        # Поиск вторичного обработчика события
        if req.path_info in routes:
            handler = routes[req.path_info]
        else:
            response = Response('Not found', status=404)
            return response(environ, start_response)

        # Проверка наличия авторизационного токена
        token = None
        if req.cookies.get('token'):
            token = req.cookies['token']

        # Вызов вторичного обработчика событий
        page_tup = {}
        try:
            page_tup = handler(req, token)
            page = page_tup['page']
        except AssertionError as e:
            page = 'Error {0}'.format(str(e.args))

        # Подготовка HTTP ответа
        response = Response(page, content_type='text/html')
        if 'redirect_to' in page_tup:
            response = req.get_response(HTTPTemporaryRedirect(location=page_tup['redirect_to']))
            response.text = page
        if 'set_cookies' in page_tup:
            for cookie in page_tup['set_cookies']:
                response.set_cookie(cookie[0], cookie[1], httponly=True)
        return response(environ, start_response)
开发者ID:d3rv1sh,项目名称:CourseWork,代码行数:46,代码来源:app.py

示例15: testCookieAdapters

# 需要导入模块: from webob import Response [as 别名]
# 或者: from webob.Response import set_cookie [as 别名]
    def testCookieAdapters(self):
        jar = CookieJar(policy=None)  # DefaultCookiePolicy())

        # set a cookie
        res = Response()
        tstval = str(uuid.uuid4())
        res.set_cookie("a-cookie", tstval, domain="example.com")
        cookies = jar.make_cookies(filters.ResponseCookieAdapter(res), Request.blank("http://example.com"))
        for c in cookies:
            jar.set_cookie(c)

        self.assert_(len(jar), ("where's my cookies?"))
        self.assert_("a-cookie" in [c.name for c in jar], "seriously, where's my cookie")

        # now put the header on the request please
        request = Request.blank("http://example.com")
        self.assert_(".example.com" in jar._cookies.keys(), jar._cookies.keys())
        jar.add_cookie_header(filters.RequestCookieAdapter(request))
        self.assert_("Cookie" in request.headers, (str(request), "Y NO COOKIES?"))
开发者ID:Batterii,项目名称:webobtoolkit,代码行数:21,代码来源:test_quickstart.py


注:本文中的webob.Response.set_cookie方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。