pnpm install
tree -L 2 -I 'node_modules|.git'
echo "20" > .nvmrc
nvm install
nvm use
rm -rf node_modules
rm -rf dist
rm -rf ~/.pnpm-store
pnpm install
npm rebuild bcrypt
find node_modules -name bcrypt_lib.node
pnpm run prisma:generate:mysql
pnpm run prisma:generate:mongo
pnpm run prisma:generate
pnpm build:mgnt
pnpm dev:mgnt
sudo systemctl start mysql
sudo systemctl start mongod
pnpm run prisma:seed:mysql pnpm run prisma:migrate:mysql
pnpm run prisma:generate:mysql
pnpm run prisma:migrate:mysql
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"
git remote add origin git@47.238.201.61:fct/box-nestjs-monorepo.git
mongosh mongodb://admin:ZXcv%21%21996@localhost:27017/box?authSource=admin
curl -X POST http://47.76.151.238:3200/external-sync/fullsync/tea-copy \ -H "Content-Type: application/json" \ -d '{"size": 20}'
Future decryptImage(Map params) async { Uint8List imgBytes = params['imgBytes']; String path = params['path']; if (imgBytes.isEmpty) { return imgBytes; } var encryptedHead = Uint8List.fromList([0x88, 0xA8, 0x30, 0xCB, 0x10, 0x76]); var needEncrypt = false; if (imgBytes.length >= encryptedHead.length) { bool allMatch = true; for (int i = 0; i < encryptedHead.length; i++) { if (encryptedHead[i] != imgBytes[i]) { allMatch = false; break; } } if (allMatch) { needEncrypt = true; } }
if (needEncrypt) { List fileNameList = utf8.encode(path);
/// 裁剪头部添加的字节数量
for (var i = 0; i < encryptedHead.length; i++) {
List<int> mutableList = imgBytes.toList();
mutableList.remove(encryptedHead[i]);
imgBytes = Uint8List.fromList(mutableList);
}
// 裁剪尾部添加的字节数量
imgBytes.sublist(0, imgBytes.length - fileNameList.length);
} return imgBytes; }