Retrofit:如何在requestInterceptor中获取请求属性

时间:2014-09-17 04:21:06

标签: java android retrofit

我需要在请求拦截器中应用Authorization标头,但我需要签署请求方法,URI和日期。

在请求拦截器中,我得到一个RequestInterceptor.RequestFacade,它只有" setter方法"

有什么办法可以在请求拦截器中获取请求属性吗?

1 个答案:

答案 0 :(得分:0)

啊,做了一些谷歌搜索。这样做的方法是使用客户端包装器。观察...

public class SigningClient implements Client {
  final Client wrapped;

  public SigningClient(Client client) {
    wrapped = client;
  }

  @Override public Response execute(Request request) {
    Request newRequest = sign(request);
    return wrapped.execute(newRequest);
  }

  private void sign(Request request) {
    // magic
  }
}

在此处找到:https://github.com/square/retrofit/issues/185#issuecomment-17819547