0
我的應用有一些onClick()
事件,其中一些事件需要登錄才能發送請求。檢查在執行操作前是否已登錄
我應該如何處理如果有人點擊某些事情需要他們登錄纔會發生的操作?
我有以下改造類:
public class RestClient {
private static ApiEndpointInterface apiService;
private static String API_URL = "http://www.website.com/api";
private RestClient() {
RestAdapter restAdapter = new RestAdapter.Builder()
.setEndpoint(API_URL)
.setRequestInterceptor(new SessionRequestInterceptor())
.build();
apiService = restAdapter.create(ApiEndpointInterface.class);
}
public static ApiEndpointInterface getApiService() {
return apiService;
}
public class SessionRequestInterceptor implements RequestInterceptor {
@Override
public void intercept(RequestFacade request) {
request.addHeader("Accept", "application/json");
if (PreferenceUtils.isLoggedIn()) {
request.addHeader("Authorization", PreferenceUtils.getTokenId() + ":" + PreferenceUtils.getTokenKey());
}
}
}
}
,這就是所謂的其他地方是這樣的:
RestClient.getApiService().getUser(new Callback<UserData>() {
@Override
public void success(UserData json, Response response) {
}
@Override
public void failure(RetrofitError retrofitError) {
}
});
正如你所看到的,如果他們登錄的攔截器增加了一個Authorization
頭,但是如果他們沒有登錄,我是否應該阻止這些電話完全通話?我應該如何實現?