如何在Ktor客户端为Android清除承载令牌



我使用的是安卓版Ktor客户端和插件:io.ktor:ktor-client-auth:1.6.4。当前的实现类似于这个片段。

现在我想实现一个"注销"功能,当点击按钮后,令牌被删除,问题是…如何?

如果您正在ktor版本2.0+中寻找相同的功能

val client = HttpClient(Apache) {
install(Auth) {
bearer {}
}
}

client.plugin(Auth).providers.filterIsInstance<BearerAuthProvider>()
.firstOrNull()?.clearToken()

您可以获得Auth插件的实例,找到BearerAuthProvider提供程序并调用clearToken方法来删除令牌。这里有一个例子:

val client = HttpClient(Apache) {
install(Auth) {
bearer {}
}
}
val provider = client.feature(Auth)!!.providers.filterIsInstance<BearerAuthProvider>().first()
provider.clearToken()

最新更新