🧹 RemoveToken
从 Composer 的 auth.json 中移除指定认证类型和域名对应的令牌/凭据。
何时使用
当某个令牌已过期、被吊销,或不再需要访问对应仓库时使用,以避免 auth.json 中残留无效凭据。
签名
go
func (c *Composer) RemoveToken(authType string, domain string) error参数
| 参数 | 类型 | 说明 |
|---|---|---|
authType | string | 认证类型,取值:github-oauth、gitlab-oauth、bitbucket-oauth、bearer、http-basic |
domain | string | 要移除凭据的域名 |
返回值
error:authType 不在支持列表时返回 ErrInvalidAuthType;读写文件失败时返回相应错误;成功时为 nil。
示例
go
package main
import (
"errors"
"fmt"
"log"
"github.com/scagogogo/composer-skills/pkg/composer"
)
func main() {
comp, err := composer.New(composer.DefaultOptions())
if err != nil {
log.Fatalf("初始化失败: %v", err)
}
// 移除 GitHub 令牌
if err := comp.RemoveToken("github-oauth", "github.com"); err != nil {
if errors.Is(err, composer.ErrInvalidAuthType) {
log.Fatalf("不支持的认证类型")
}
log.Fatalf("移除令牌失败: %v", err)
}
fmt.Println("令牌已移除")
}进阶
- 支持的类型不包含
gitlab-token与aws-access-key;这两类需通过GetAuthConfig+SaveAuthConfig手动删除。 - 添加令牌见
AddGitHubToken、AddGitLabToken、AddBearerToken、AddHTTPBasicAuth。 - 移除后配置会立即写回
auth.json(权限0600)。