在 Debian 上用 Node.js“连接库”一般分几种常见场景,我按最常见的情况给你说明,你看看是哪一类:
sudo apt update
sudo apt install libxxx-dev
例如:
sudo apt install libssl-dev
ffi-napi 或 node-gyp 调用ffi-napi(简单)npm install ffi-napi ref-napi
示例:
const ffi = require('ffi-napi');
const lib = ffi.Library('libm', {
ceil: ['double', ['double']]
});
console.log(lib.ceil(4.2));
npm install -g node-gyp
npm install nan
binding.gyp:
{
"targets": [{
"target_name": "addon",
"sources": ["addon.cc"],
"libraries": ["-lxxx"]
}]
}
sudo apt install default-mysql-server
npm install mysql2
const mysql = require('mysql2');
const conn = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'test'
});
conn.query('SELECT 1', (err, res) => {
console.log(res);
});
sudo apt install postgresql
npm install pg
const { Pool } = require('pg');
const pool = new Pool({
user: 'postgres',
host: 'localhost',
database: 'test',
password: 'password',
port: 5432
});
pool.query('SELECT NOW()', (err, res) => {
console.log(res.rows);
});
sudo apt install redis-server
npm install redis
const redis = require('redis');
const client = redis.createClient();
client.on('connect', () => {
console.log('connected');
});
npm install lodash
const _ = require('lodash');
Debian 自带 Node 可能很老:
node -v
建议用 nvm:
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 20
ldconfig
或运行时指定:
LD_LIBRARY_PATH=/usr/local/lib node app.js
如果你能具体说一下:
我可以直接给你一份可运行的示例。