|
|
@ -10,33 +10,61 @@ app.use(cors());
|
|
|
|
|
|
|
|
|
|
|
|
app.use(bodyParser.json());
|
|
|
|
app.use(bodyParser.json());
|
|
|
|
|
|
|
|
|
|
|
|
// 创建快捷方式接口
|
|
|
|
// window系统下创建快捷方式接口
|
|
|
|
|
|
|
|
// app.post('/createShortcut', (req, res) => {
|
|
|
|
|
|
|
|
// // folderPath:存放的路径 shortcutName: 快捷方式名称 shortcutURL: 快捷方式的访问地址
|
|
|
|
|
|
|
|
// const { folderPath, shortcutName, shortcutURL } = req.body;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // 检查是否缺少任何一个值
|
|
|
|
|
|
|
|
// if (!folderPath || !shortcutName || !shortcutURL) {
|
|
|
|
|
|
|
|
// return res.status(400).send('少了参数!');
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // 创建文件夹(如果不存在)
|
|
|
|
|
|
|
|
// if (!fs.existsSync(folderPath)) {
|
|
|
|
|
|
|
|
// fs.mkdirSync(folderPath, { recursive: true });
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// const shortcutFilePath = path.join(folderPath, `${shortcutName}.url`);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // 删除旧的快捷方式文件(如果存在)
|
|
|
|
|
|
|
|
// if (fs.existsSync(shortcutFilePath)) {
|
|
|
|
|
|
|
|
// fs.unlinkSync(shortcutFilePath);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// // 创建快捷方式
|
|
|
|
|
|
|
|
// const shortcutFolderPath = path.join(folderPath, shortcutName + '.url');
|
|
|
|
|
|
|
|
// const shortcutFileContent = `[InternetShortcut]\nURL=${shortcutURL}`;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// fs.writeFile(shortcutFolderPath, shortcutFileContent, (err) => {
|
|
|
|
|
|
|
|
// if (err) {
|
|
|
|
|
|
|
|
// console.error(err);
|
|
|
|
|
|
|
|
// res.status(500).send('安装失败!');
|
|
|
|
|
|
|
|
// } else {
|
|
|
|
|
|
|
|
// res.status(200).send('安装成功!');
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
// });
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// linux系统下创建快捷方式接口
|
|
|
|
app.post('/createShortcut', (req, res) => {
|
|
|
|
app.post('/createShortcut', (req, res) => {
|
|
|
|
// folderPath:存放的路径 shortcutName: 快捷方式名称 shortcutURL: 快捷方式的访问地址
|
|
|
|
|
|
|
|
const { folderPath, shortcutName, shortcutURL } = req.body;
|
|
|
|
const { folderPath, shortcutName, shortcutURL } = req.body;
|
|
|
|
|
|
|
|
|
|
|
|
// 检查是否缺少任何一个值
|
|
|
|
|
|
|
|
if (!folderPath || !shortcutName || !shortcutURL) {
|
|
|
|
if (!folderPath || !shortcutName || !shortcutURL) {
|
|
|
|
return res.status(400).send('少了参数!');
|
|
|
|
return res.status(400).send('少了参数!');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 创建文件夹(如果不存在)
|
|
|
|
|
|
|
|
if (!fs.existsSync(folderPath)) {
|
|
|
|
if (!fs.existsSync(folderPath)) {
|
|
|
|
fs.mkdirSync(folderPath, { recursive: true });
|
|
|
|
fs.mkdirSync(folderPath, { recursive: true });
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const shortcutFilePath = path.join(folderPath, `${shortcutName}.url`);
|
|
|
|
const shortcutLinkPath = path.join(folderPath, shortcutName);
|
|
|
|
|
|
|
|
|
|
|
|
// 删除旧的快捷方式文件(如果存在)
|
|
|
|
if (fs.existsSync(shortcutLinkPath)) {
|
|
|
|
if (fs.existsSync(shortcutFilePath)) {
|
|
|
|
fs.unlinkSync(shortcutLinkPath);
|
|
|
|
fs.unlinkSync(shortcutFilePath);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 创建快捷方式
|
|
|
|
fs.symlink(shortcutURL, shortcutLinkPath, 'file', (err) => {
|
|
|
|
const shortcutFolderPath = path.join(folderPath, shortcutName + '.url');
|
|
|
|
|
|
|
|
const shortcutFileContent = `[InternetShortcut]\nURL=${shortcutURL}`;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fs.writeFile(shortcutFolderPath, shortcutFileContent, (err) => {
|
|
|
|
|
|
|
|
if (err) {
|
|
|
|
if (err) {
|
|
|
|
console.error(err);
|
|
|
|
console.error(err);
|
|
|
|
res.status(500).send('安装失败!');
|
|
|
|
res.status(500).send('安装失败!');
|
|
|
|