我正在使用NodeJS + Restify编写服务。我已将每个实际服务拆分为单独的文件(我假设,每个人都在做什么)。他们都将使用mysql数据库,所以我想我可以打开一个数据库的连接,每个服务可以使用它,而不是每次请求都打开连接。
问题是我似乎找不到传递用户数据的方法。 用户数据我指的是服务器回调的每个服务都可以访问的任何自定义数据。
答案 0 :(得分:2)
我主要使用NodeJS + Express,但查看了Restify的一些文档,我相信你可以使用授权解析器(在他们网站上的Bundled Plugins下:click here to go there)
我认为这是传递用户数据的最基本方式。 我没有测试过它,但我相信你只是添加它来使用它:
server.use(restify.authorizationParser());
然后,您可以使用以下方式访问用户数据:
//This is based on the structure of req.authorization in the documentation.
req.authorization.basic.user
我相信您可以设置新的用户数据(当用户登录时或其他内容),例如:
req.authorization.id = 'id'