Google cloud storage 如何使用Java为GCP中的存储服务设置代理?
我想使用JAVA从GCP Bucket下载对象。以下是我编写的代码示例:Google cloud storage 如何使用Java为GCP中的存储服务设置代理?,google-cloud-storage,Google Cloud Storage,我想使用JAVA从GCP Bucket下载对象。以下是我编写的代码示例: NetHttpTransport.Builder builder = new NetHttpTransport.Builder(); builder.trustCertificates(GoogleUtils.getCertificateTrustStore()); builder.setProxy(new Proxy(Proxy.Type.SOCKS, new InetSocketAdd
NetHttpTransport.Builder builder = new NetHttpTransport.Builder();
builder.trustCertificates(GoogleUtils.getCertificateTrustStore());
builder.setProxy(new Proxy(Proxy.Type.SOCKS, new
InetSocketAddress("myproxy", 1234)));
final HttpTransport httpTransport = builder.build();
HttpTransportFactory hf = new HttpTransportFactory(){
@Override
public HttpTransport create() {
return httpTransport;
}
};
ServiceAccountCredentials.fromStream(new FileInputStream("path"));
Storage storage = StorageOptions.newBuilder()
.setProjectId("projectId")
.setCredentials(ServiceAccountCredentials.getApplicationDefault(hf))
.build()
.getService();
运行此代码时,我遇到以下异常:
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to
find valid certification path to requested target
有没有办法为存储服务设置代理?根据中的说明,Google云客户端库不提供内置代理支持。您必须配置系统代理或特定于环境的代理。 例如,如果您正在运行JVM,则可以按照所述配置代理设置