Так, ви можете пройти їх під час виконання. Насправді, майже так само, як ви це ввели. Це буде у вашому класі інтерфейсу API, який називається say SecretApiInterface.java
public interface SecretApiInterface {
@GET("/secret_things")
SecretThing.List getSecretThings(@Header("Authorization") String token)
}
Потім ви передаєте параметри цьому інтерфейсу із вашого запиту, щось подібне до цих рядків: (цей файл буде, наприклад, SecretThingRequest.java )
public class SecretThingRequest extends RetrofitSpiceRequest<SecretThing.List, SecretApiInteface>{
private String token;
public SecretThingRequest(String token) {
super(SecretThing.List.class, SecretApiInterface.class);
this.token = token;
}
@Override
public SecretThing.List loadDataFromNetwork() {
SecretApiInterface service = getService();
return service.getSecretThings(Somehow.Magically.getToken());
}
}
Де Somehow.Magically.getToken()
виклик методу, який повертає маркер, від вас залежить, де і як ви його визначите.
Звичайно, ви можете мати кілька @Header("Blah") String blah
анотацій у реалізації інтерфейсу, як у вашому випадку!
Мене це теж заплутало, в документації чітко сказано, що він замінює заголовок, але НЕ !
Фактично це додано як із @Headers("hardcoded_string_of_liited_use")
анотацією
Сподіваюся, це допомагає;)