gpt4 book ai didi

android - 在运行时使用 Dagger 添加 Retrofit Requestinterceptor

转载 作者:太空宇宙 更新时间:2023-11-03 11:43:19 25 4
gpt4 key购买 nike

我正在使用 Dagger 和改造。我用 Dagger 注入(inject)我的 Retrofit 服务。

现在我想做一个授权请求来获取 accessToken。

然后我想用请求拦截器增强我的 api 模块,以便将此访问 token 用于 future 的请求。

我的想法是在收到访问 token 后使用 ObjectGraph.plus() 方法,但我不确定这是否是最好的方法。

有人能给我指出正确的方向吗?或者 github 上是否有示例项目?

最佳答案

关键是始终添加RequestInterceptor,然后更改是否添加 header 。

class ApiHeaders implements RequestInterceptor {
private String authValue;

public void clearAuthValue() {
authValue = null;
}

public void setAuthValue(String authValue) {
this.authValue = authValue;
}

@Override public void intercept(RequestFacade request) {
String authValue = this.authValue;
if (authValue != null) {
request.addHeader("Authorization", authValue);
}
}
}

通过这种方式,您可以在需要设置或清除 token 时注入(inject)您的 ApiHeaders 单例。

关于android - 在运行时使用 Dagger 添加 Retrofit Requestinterceptor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27868511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com