Android 代币以及如何处理它们
我正在开发一个应用程序,将数据拉入并推送到服务器 为了防止不希望的Web服务使用,我们建立了一个每隔一段时间更新一次的令牌系统 我正在创建一个方法,该方法将在每个webservices调用之前检查令牌是否不为null 比如:Android 代币以及如何处理它们,android,Android,我正在开发一个应用程序,将数据拉入并推送到服务器 为了防止不希望的Web服务使用,我们建立了一个每隔一段时间更新一次的令牌系统 我正在创建一个方法,该方法将在每个webservices调用之前检查令牌是否不为null 比如: public boolean isTokenValid(){ if (token == null){ renewToken(); return false; } return true; } 同样的方式,如果我得到令
public boolean isTokenValid(){
if (token == null){
renewToken();
return false;
}
return true;
}
同样的方式,如果我得到令牌过期的服务器错误代码,我会调用renewToken()
我的问题:
如何在接收有效令牌时再次调用我的方法?请记住,之后调用的方法是“动态的”:该方法可以从任何Web服务调用,因此需要它再次运行此调用
潜在解决方案:
1) 创建尽可能多的令牌更新方法
例如:renewTokenGetProduct()、renewTokenGetProfile()。。。要知道在获取有效令牌时要调用哪个Web服务。但这似乎不太合适
2) 我还可以传递一个参数。例如,RenewatToken(产品)或RenewatToken(配置文件),然后使用条件或广播,但在我看来,这又有点过分/草率。从api方面尝试为令牌添加一个参数 比如令牌和类别 所以 然后在续订令牌中:
if(category.equals("profile"){
//do necessary work
}
else if(category.equals("product"){
//do necessary work or pass intent
}
else{
//
}
if(category.equals("profile"){
//do necessary work
}
else if(category.equals("product"){
//do necessary work or pass intent
}
else{
//
}