在发回响应之前从数据库中解密数据 Node.js
Decrypting Data From Database Before Sending Response Back Node.js
更新
我遇到的实际问题是在 decrypt
之后将值放回响应中。我只需要知道如何在操作后将值放回 response
中。
背景
在我的 angular2
应用程序的 node
端,我正准备从对 postgres
数据库的 api
调用中发送 response
。我需要 decrypt
response
中的值之一。在文档中,它显示要像这样处理 response
,
if (err) {
console.error(err);
res.status(500).send();
return done(); // always close connection
} else {
if (result.rowCount > 0) {
decrypt(result.rows[0].myvalue);
let user = result.rows[0];
res.send(user);
return done(); // always close connection
}
问题
我无法弄清楚如何在发送回响应之前操纵响应中的值之一。在这种情况下 decrypt(user.myvalue);
或在将其放入 user
decrypt(result.rows[0].myValue);
之前对其进行解密
例子
如果您 console.log(user.myvalue);
则显示加密的 myvalue
。我需要在 myvalue
出现在 response
之前解密它。我可以这样decrypt
,
解密(result.rows[0].ssn);
问题
我如何 decrypt
使用 decrypt(result.myvalue);
以便它在用户 object
中被发送回 response
decrypted
?
老实说,我对这种外观的效果感到困惑。
if (result.rowCount > 0) { // if greater than 0? Should it not always be greater than 0:
let user = result.rows[0];
响应返回正常。我可以在 node
端毫无问题地访问数据。我只是不明白它在存储它时是如何循环的。因为 result.rows[0];
在我看来只是一个位置?我想它只是将整个响应存储在那个位置 [0];
??
所以这输出 myvalue
console.log(result.rows[0].myValue);
所以我只需要decrypt
那个值然后放回去。
你可以试试这个:
result.rows[0].myvalue = decrypt(result.rows[0].myvalue);
它将 decrypt()
myvalue 。
更新
我遇到的实际问题是在 decrypt
之后将值放回响应中。我只需要知道如何在操作后将值放回 response
中。
背景
在我的 angular2
应用程序的 node
端,我正准备从对 postgres
数据库的 api
调用中发送 response
。我需要 decrypt
response
中的值之一。在文档中,它显示要像这样处理 response
,
if (err) {
console.error(err);
res.status(500).send();
return done(); // always close connection
} else {
if (result.rowCount > 0) {
decrypt(result.rows[0].myvalue);
let user = result.rows[0];
res.send(user);
return done(); // always close connection
}
问题
我无法弄清楚如何在发送回响应之前操纵响应中的值之一。在这种情况下 decrypt(user.myvalue);
或在将其放入 user
decrypt(result.rows[0].myValue);
例子
如果您 console.log(user.myvalue);
则显示加密的 myvalue
。我需要在 myvalue
出现在 response
之前解密它。我可以这样decrypt
,
解密(result.rows[0].ssn);
问题
我如何 decrypt
使用 decrypt(result.myvalue);
以便它在用户 object
中被发送回 response
decrypted
?
老实说,我对这种外观的效果感到困惑。
if (result.rowCount > 0) { // if greater than 0? Should it not always be greater than 0:
let user = result.rows[0];
响应返回正常。我可以在 node
端毫无问题地访问数据。我只是不明白它在存储它时是如何循环的。因为 result.rows[0];
在我看来只是一个位置?我想它只是将整个响应存储在那个位置 [0];
??
所以这输出 myvalue
console.log(result.rows[0].myValue);
所以我只需要decrypt
那个值然后放回去。
你可以试试这个:
result.rows[0].myvalue = decrypt(result.rows[0].myvalue);
它将 decrypt()
myvalue 。