📦 AuditLock
对指定的 composer.lock 文件执行安全审计。等价于执行 composer audit [lockFilePath] 命令。
何时使用
当你需要对尚未执行 composer install 的项目、或其他项目目录下的 lock 文件进行审计时使用。传入空字符串则审计当前目录的 lock 文件。
签名
go
func (c *Composer) AuditLock(lockFilePath string) (string, error)参数
| 参数 | 类型 | 说明 |
|---|---|---|
lockFilePath | string | composer.lock 文件路径,为空时使用当前目录的 lock 文件 |
返回值
| 返回值 | 类型 | 说明 |
|---|---|---|
| 第一返回值 | string | 审计命令的标准输出文本 |
| 第二返回值 | error | 执行过程中发生错误时返回 |
示例
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)
}
// 审计当前项目的 lock 文件
output, err := comp.AuditLock("")
if err != nil {
log.Fatalf("审计 lock 文件失败: %v", err)
}
fmt.Println(output)
// 审计其他项目的 lock 文件
other, err := comp.AuditLock("/path/to/other/project/composer.lock")
if err != nil {
log.Fatalf("审计 lock 文件失败: %v", err)
}
fmt.Println(other)
}进阶
- 本方法返回文本输出;若要对 lock 文件审计结果做结构化处理,可改用
AuditWithOptions配合format=json,再用 GetAuditInfo 的解析逻辑。 - 相关方法:Audit、AuditWithJSON、AuditWithFormat。