在尝试将包从一个提要复制到另一个提要时,我尝试使用npm-registry-client - https://www.npmjs.com/package/npm-registry-client。
但是,我在尝试发布到目标注册表时遇到错误。
TypeError ERR_INVALID_ARG_TYPE:"data“参数必须是string类型,或者是Buffer、TypedArray或DataView的实例。在内部收到一个数组实例( Hash.update /crypto/hash.js:82:11)
在发布之前,我使用相同的模块获取包。获取成功并返回200。然后将解析后的数据传递给publish函数。
new Promise((resolve, reject) => {
client.fetch(dist.tarball, from.params,
function process(error, data, raw, res) {
if (error) {
reject(error);
}
resolve(data);
}
);
})
.then(tarball => {
new Promise((resolve, reject) => {
publishParams = {
metadata: newMetadata,
access: "public",
body: tarball,
auth: to.params.auth
}
npm.publish(`${to.feedUrl}/${moduleName}`, publishParams, process(error, data, raw, res) {});.
发布于 2021-07-30 03:11:53
显然,我得到了一个302,并使用重定向tarball来获取tarball。
注册表I更改为节点获取直到获取tarball (为了最小化回调并仅使用async/await).
https://stackoverflow.com/questions/68534288
复制相似问题