错误重现:(使用ctx.cookies.set时报错)

Koa中使用cookies

这是因为koa的http的header字符集支持US-ASCII子集的字符集,故设置中文是'utf8'时就会报上面错误

解决方法有两种:

1. 使用new Buffer().toString('base64')转换

2. 使用encodeURIComponent()转换

1 this.cookies.set('test', new Buffer('你好').toString('base64'))
1 new Buffer(ctx.cookies.get('test'), 'base64').toString();

或者

1 ctx.cookies.set('uname', encodeURIComponent('你好'))
2 
3 decodeURIComponent(ctx.cookies.get('uname'))

如果value值是英文字符,无需转换

 

相关文章:

  • 2022-12-23
  • 2021-12-19
  • 2021-11-26
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-18
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-25
相关资源
相似解决方案