Bottle框架中设置响应头中的Cookie信息
在Bottle框架中,可以通过response.set_cookie()方法设置响应头中的Cookie信息。set_cookie()方法调用方式如下:
response.set_cookie(name, value='', secret=None, **kwargs)
- name: cookie的名称。
- value: cookie的值。
- secret: 用于加密的密钥。如果不提供密钥,则cookie不会被加密。
- kwargs: 其他参数。
使用例子如下:
from bottle import Bottle, response
app = Bottle()
@app.route('/set_cookie')
def set_cookie():
response.set_cookie('username', 'alice', secret='mysecret')
response.set_cookie('language', 'en')
return 'Cookie has been set'
@app.route('/get_cookie')
def get_cookie():
username = request.get_cookie('username', secret='mysecret')
language = request.get_cookie('language')
return f'Username: {username}, Language: {language}'
app.run(host='localhost', port=8080)
在上述例子中,首先定义了两个路由函数。set_cookie()函数用于设置Cookie信息,get_cookie()函数用于获取Cookie信息。
在set_cookie()函数中,使用response.set_cookie()方法设置了两个Cookie:'username'和'language'。'username'的值为'alice',并传入了加密密钥'secret=mysecret'。而'language'的值则为'en'。这样设置后,这两个Cookie信息就会被加入到响应头中。
在get_cookie()函数中,通过request.get_cookie()方法获取了'username'和'language'这两个Cookie信息。如果Cookie被加密了,需要提供相应密钥进行解密。然后将获取到的Cookie信息返回。
最后,通过app.run()方法运行Bottle应用,监听在本地主机的8080端口。
启动应用后,访问http://localhost:8080/set_cookie即可设置Cookie信息。然后访问http://localhost:8080/get_cookie获取Cookie信息。你将看到输出结果为:Username: alice, Language: en。
这个例子展示了如何使用Bottle框架中的response.set_cookie()方法来设置响应头中的Cookie信息,并通过request.get_cookie()方法获取Cookie信息。
