我是改造的新手,这个问题可能是微不足道的。这是一个简单的api接口
public interface ApiRetrofitService {
@GET("territories/url")
@Headers({"Token: XXXXX"})
public Call<List<Territory>> getTerritories();
@GET("territories/url/current")
@Headers({"Token: XXXXX"})
public Call<Territory> getCurrentTerritory();
}
我想从静态资源文件中加载Headers,为了保持简单,我想要将标题值存储在<string name="token">XXXXX</string>
中的strings.xml中。有没有办法可以在ApiRetrofitService头中添加strings.xml中的值。我正在跳这样的事情:
public interface ApiRetrofitService {
@GET("territories/url")
@Headers({"Token:" + R.strings.token})
public Call<List<Territory>> getTerritories();
@GET("territories/url/current")
@Headers({"Token:" + R.strings.token})
public Call<Territory> getCurrentTerritory();
}
总的来说,我如何解决我需要为不同的构建风格添加不同标题的问题?感谢
答案 0 :(得分:0)
为时已晚,但可能会对其他人有所帮助。
您可以使用动态标头,例如
@GET("territories/url/current")
public Call<Territory> getCurrentTerritory(@Header("Token") String token);
以及调用get方法时
if (BuildConfig.DEBUG) {
//call getCurrentTerritory(//debug string token)
}else{
//call getCurrentTerritory(//production string token)
}