/hello-arm: /lib64/libc.so.6: version `GLIBC_2.28' not found (required by ./hello-arm)
./hello-arm: /lib64/libc.so.6: version `GLIBC_2.33' not found (required by ./hello-arm)
./hello-arm: /lib64/libc.so.6: version `GLIBC_2.32' not found (required by ./hello-arm)
./hello-arm: /lib64/libc.so.6: version `GLIBC_2.34' not found (required by ./hello-arm)
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_LINKER=aarch64-linux-musl-gcc \
CC_aarch64_unknown_linux_musl=aarch64-linux-musl-gcc \
CXX_aarch64_unknown_linux_musl=aarch64-linux-musl-g++ \
cargo build --target=aarch64-unknown-linux-musl
и вуаля! оно собралось, и шелл NAS напечатал мне hello world import type {
Request,
Response,
NextFunction,
} from 'express';
type Middleware = (req: Request, res: Response, next: NextFunction) => void | Promise<void>;
export function wrapMiddleware(middleware: Middleware) {
return (async (req, res, next) => {
try {
await middleware(req, res, next);
} catch (e) {
next(e);
}
}) satisfies Middleware;
}
| Error
.then((result) => result)
А вот с этим не понял, почему она бесполезна ?
можете еще объяснить, почему вы использовали
import { Pool, type QueryResult, type QueryResultRow } from 'pg';
.then((result) => result)
эта конструкция бесполезна.catch((error) => error)
а эта конструкция поймает ошибку и вернет ее туда же где ожидается результат, возможно лучше ее здесь не ловить, либо как-то обернуть возвращаемое значение, чтоб было понятно ошибка это или результат import { Pool, type QueryResult, type QueryResultRow } from 'pg';
const pool = new Pool();
export const query = (text: string, params?: unknown[]): Promise<QueryResult<QueryResultRow>> => pool.query(text, params);
export const getClient = () => pool.connect();
заодно разбил объект на отдельные экспорты app.post('/server', (req, res) => {
let data = '';
req.on('data', chunk => {
data += chunk;
});
req.on('end', () => {
const pay = JSON.parse(data);
// ...
});
});
https://github.com/tc39/proposals