加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
cnpm-sync.js 1.76 KB
一键复制 编辑 原始数据 按行查看 历史
chenos 提交于 2024-06-21 13:03 . chore: cnpm sync
// @ts-ignore
const axios = require('axios');
const glob = require('glob');
const path = require('path');
const fs = require('fs/promises');
const lerna = require('./lerna.json');
const files = glob.sync(path.resolve(__dirname, './node_modules/@nocobase/**/package.json'));
(async () => {
for (const file of files) {
const content = await fs.readFile(file);
const json = JSON.parse(content.toString());
const url = `https://registry.npmmirror.com/${json.name}`;
try {
const response = await axios.get(url);
const latest = response?.data?.['dist-tags']?.latest;
if (latest !== lerna.version) {
console.log(json.name, latest);
console.log(`https://www.npmmirror.com/package/${json.name}`);
const res = await fetch(`https://registry-direct.npmmirror.com/-/package/${json.name}/syncs`, {
headers: {
accept: '*/*',
'accept-language': 'zh-CN,zh;q=0.9',
priority: 'u=1, i',
'sec-ch-ua': '"Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"macOS"',
'sec-fetch-dest': 'empty',
'sec-fetch-mode': 'cors',
'sec-fetch-site': 'same-site',
Referer: 'https://www.npmmirror.com/',
'Referrer-Policy': 'strict-origin-when-cross-origin',
},
body: null,
method: 'PUT',
});
// const response = await axios.put(`https://registry-direct.npmmirror.com/-/package/${json.name}/syncs`);
console.log(await res.json());
await new Promise((resolve) => {
setTimeout(() => {
resolve(null);
}, 1000);
});
}
} catch (error) {
// ...
}
}
})();
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化