Node.js mongoose和restify-在返回json之前本地化字符串
我想在基于node.js、restify和mongoose的RestFul API中返回多语言业务对象的本地化字符串。我需要将翻译后的资源存储在我们的翻译资源服务器上,但也需要支持这些业务对象的动态创建 在创建或更新我的多语言业务对象时,我找到了一个解决方案,可以在POST/PUT调用中使用单个预“保存”mongoose中间件轻松插入i18n进程,因为我能够将请求上下文传递给obj.save(req,callback)调用 但是,我很难在simple GETs上插入i18n。在返回响应之前,我想到并尝试了不同的方法来插入i18n,但并没有找到好的方法。我想到的选择:Node.js mongoose和restify-在返回json之前本地化字符串,node.js,express,internationalization,mongoose,restify,Node.js,Express,Internationalization,Mongoose,Restify,我想在基于node.js、restify和mongoose的RestFul API中返回多语言业务对象的本地化字符串。我需要将翻译后的资源存储在我们的翻译资源服务器上,但也需要支持这些业务对象的动态创建 在创建或更新我的多语言业务对象时,我找到了一个解决方案,可以在POST/PUT调用中使用单个预“保存”mongoose中间件轻松插入i18n进程,因为我能够将请求上下文传递给obj.save(req,callback)调用 但是,我很难在simple GETs上插入i18n。在返回响应之前,我想
- 在mongoose中间件pre/post('init')中进行翻译: 问题:我无法访问请求上下文,因此 我不知道要返回的区域设置,因此无法在那里进行翻译
- 在toObject()/toJSON{transform:}中进行翻译: 同样的问题-我在这些钩子中没有请求上下文
- 翻译每个ressource的处理程序/控制器方法 问题:复制,我必须在任何地方都这样做,我真的更喜欢可以在模型/模式层定义的解决方案
- 最后在restify/express中间件中进行翻译: 问题:我再也不能访问mongoose模式元信息了,所以我不知道要翻译哪些属性