PostgreSQL возвращает строки, заполняя некоторые столбцы начальными пробелами.Как предотвратить это?
Я запускаю код node.js в лямбде.
const pg = require('pg')
const pool = new pg.Pool({
user :'****',
host: '****-east-1.rds.amazonaws.com',
database: 'test',
password: '*******',
port: 5432
})
async function query (q) {
const client = await pool.connect()
let res
try {
await client.query('BEGIN')
try {
res = await client.query(q)
await client.query('COMMIT')
} catch (err) {
await client.query('ROLLBACK')
throw err
}
} finally {
client.release()
}
return res
}
exports.handler = async (event, context, callback) => {
try {
const { rows } = await query("select * from test_table")
console.log(rows)
var response = {
"statusCode": 200,
"headers": {
"Content-Type" : "application/json"
},
"rows":JSON.parse(JSON.stringify(rows))
};
callback(null, response);
} catch (err) {
console.log('Database ' + err)
callback(null, 'Database ' + err);
}
};
Фактический результат:
Response:
{
"statusCode": 200,
"headers": {
"Content-Type": "application/json"
},
"rows": [
{
"name": "Abhi ",
"email": "test_abhi@gmail.com"
},
{
"name": "abhi2 ",
"email": "abhi2@test.com"
},
{
"name": "abhi23 ",
"email": "abhi2@test.com"
},
{
"name": "abhi25 ",
"email": "abhi2@test.com"
}
]
}
Expected Result:
Response:
{
"statusCode": 200,
"headers": {
"Content-Type": "application/json"
},
"rows": [
{
"name": "Abhi",
"email": "test_abhi@gmail.com"
},
{
"name": "abhi2",
"email": "abhi2@test.com"
},
{
"name": "abhi23",
"email": "abhi2@test.com"
},
{
"name": "abhi25",
"email": "abhi2@test.com"
}
]
}
Любая помощь будет оченьоценили.Я новый node.js и ничего не знаю.Хотите узнать, как соединить Lambda, RDS PostgreSQL, Amazon API и node.js, просто и требует наименьшего количества кода.