有没有实现“阻止”请求拦截器的好方法?
主要思想是应拦截所有请求并添加其他标头-令牌.
如果令牌不存在,则应首先对其进行检索,然后将其添加到该请求中并缓存以备将来使用.通过API调用检索令牌.
我尝试执行同步请求,但是会产生android.os.networkonmainthreadException.使用in_progress标志实现它看起来并不好.
解决方法:
您已经可以使用RequestInterceptor完成此 *** 作的“拦截”部分.只需使用RestAdapter.Builder.setRequestInterceptor().
不过,最好从RequestInterceptor外部的API中检索令牌,因为这并不是要这样做.第一次调用后,您可以在RequestInterceptor.intercept()中的请求中的任何位置添加令牌.
像这样:
Builder builder = new RestAdapter.Builder()//Set Endpoint URL, Retrofit class... etc.setRequestInterceptor(new RequestInterceptor() { @OverrIDe public voID intercept(RequestFacade request) { String authToken = getAuthToken(); //Not included here, retrIEve the token. request.addheader("Authorization", "Bearer " + authToken); });
总结 以上是内存溢出为你收集整理的android-阻止请求拦截器进行翻新?全部内容,希望文章能够帮你解决android-阻止请求拦截器进行翻新?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)