为什么Npm审计返回一个400的错误代码?

依琳娜Floim
2023-01-22 11:09

由于npm注册表发生了重大变化,Xray无法执行npm审计命令。当发出这个命令时,npm客户端会返回一个类似这样的错误:获取repo $repo_name的审计报告失败。status: 400原因:{"error":"读取请求失败"}在x射线日志中,将记录以下错误:[jfxr][错误][9 caf27aft49e63db] [npm_audit_handler: 40][主要]未能读请求,犯错:json:不能解组数组到Advisories.optional_report_to_enhance.advisories结构体字段。字符串类型Cwe此行为影响低于3.44.2的x射线版本。针对此行为的修复已在Xray版本3.43.4及更高版本上实现,因此,Xray应该升级到包含修复的版本以缓解该问题。如果不能立即升级,可以将以下属性添加到$JFROG_HOME/artifactory/etc/artifactory.system中。作为临时解决方案,在Artifactory机器上的属性文件:artifactory.npm.minimal.xray.audit.support = 9.9.9此属性将禁用此功能,直到执行升级。在HA设置的情况下,应该将其添加到所有节点。更改需要重新启动才能生效。