架构服务器端i18n的最佳方法

Jos*_*san 3 nestjs

我正在使用nestjs创建我的REST API,并且我要求为API返回的所有消息(异常消息,提示等)支持i18n,我想知道这样做的更好方法是什么使用nestjs框架。

使用Plain Express,我可以从请求标头中获取用户语言,然后可以将其翻译为Nestjs中间件,以便将语言代码放入存在于请求执行上下文中的某种软件中,然后从我的i18n服务中使用(不想在每个软件中都添加语言参数,我需要用户语言)您如何看待?解决我的需求是否合适?在当前请求中放置语言的最佳位置是哪一个?

Kam*_*iec 5

我会使用i18-nodehttps://github.com/mashpie/i18n-node,它与express兼容,因此与Nest一起使用也没有矛盾。另外,我建议将自定义装饰器注册为res.__调用包装器。

  • 谢谢卡米尔。我想知道的是如何在我的服务中使用 i18n。考虑从服务抛出业务逻辑异常,包括必须使用用户首选语言的友好错误消息。 (2认同)