我使用适用于 Java 的 Google HTTP 客户端库来发出简单的 JSON 请求并解析响应。当我不通过代理时,它运行良好。但现在我想允许我的用户在我的应用程序中使用代理(带身份验证)功能。我查看了 HttpTransport、HttpRequestFactory 和 HttpRequestInitializer 类,但没有成功。
到目前为止,我只是稍微修改了这些示例(主要是删除了不必要的代码)。那么在代码中的什么位置添加代理设置呢?
static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
static final JsonFactory JSON_FACTORY = new JacksonFactory();
<T> T get(String url, Class<T> type) throws IOException {
HttpRequestFactory requestFactory =
HTTP_TRANSPORT.createRequestFactory(new HttpRequestInitializer() {
@Override
public void initialize(HttpRequest request) {
request.setParser(new JsonObjectParser(JSON_FACTORY));
}
});
HttpRequest request = requestFactory.buildGetRequest(new GenericUrl(url));
return request.execute().parseAs(type);
}