作者:手机用户2602918765 | 来源:互联网 | 2023-05-27 15:22
我正在使用匕首和改装.我用Dagger注入了我的Retrofit服务.
现在我想做一个授权请求来获取accessToken.
之后我想使用Request拦截器来增强我的api模块,以便将来使用此访问令牌.
我的想法是在收到访问令牌后使用ObjectGraph.plus()方法,但我不确定这是否是最好的方法.
有人能指出我正确的方向,或者github上有一个示例项目吗?
1> Jake Wharton..:
关键是要始终添加RequestInterceptor
然后更改它是否添加标题.
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);
}
}
}
这样,您可以ApiHeaders
在需要设置或清除令牌时注入单例.