🔒 Audit
对当前项目的依赖执行安全审计,返回 Composer 标准格式的文本输出。等价于执行 composer audit 命令。
何时使用
当你只需要查看项目是否存在已知安全漏洞、并以人类可读的文本形式展示结果时使用。如果需要在程序中进一步处理漏洞数据,请改用 AuditWithJSON 或 GetAuditInfo。
签名
go
func (c *Composer) Audit() (string, error)参数
该方法无参数。
返回值
| 返回值 | 类型 | 说明 |
|---|---|---|
| 第一返回值 | string | composer audit 的标准输出文本 |
| 第二返回值 | error | 执行过程中发生错误时返回,nil 表示成功 |
注意
当审计发现漏洞时,Composer 会以非零退出码退出,此时本方法可能返回 error。若希望即使发现漏洞也能拿到结果,请使用 HasVulnerabilities 或 GetAuditInfo。
示例
go
package main
import (
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
comp, err := composer.NewComposer("")
if err != nil {
log.Fatalf("初始化失败: %v", err)
}
output, err := comp.Audit()
if err != nil {
log.Fatalf("执行安全审计失败: %v", err)
}
fmt.Println("安全审计结果:")
fmt.Println(output)
}进阶
- 需要结构化数据:使用 AuditWithJSON 获取
*AuditResult。 - 排除开发依赖:使用 AuditWithoutDev。
- 自定义输出格式:使用 AuditWithFormat。
- 完全自定义选项:使用
AuditWithOptions(options map[string]string),可同时传入no-dev、format、locked等多个参数。