如何使用HTTP代理与Pac4j-oauth?



最近我正在使用pac4j项目Oauth Twitter。在本地运行,一切正常。但是当我在远程服务器上运行时,不幸的是,服务不能正常工作,因为没有直接访问外部网络。

例如,在apache.httpcomponents中:httpclient:

HttpClients.custom().setSSLSocketFactory(sslsf).setProxy(new HttpHost("192.168.200.14", 8080)).build()

如何使用HTTP代理与Pac4j-oauth?

你应该能够做到:

JDKHttpClientConfig myConfig = JDKHttpClientConfig.defaultConfig();
Proxy myProxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("1.0.0.0", 8080));
myConfig.setProxy(myProxy);
twitterClient.getConfiguration().setHttpClientConfig(myConfig);

OK。我有一个新的想法,当我看到scribejava在github

pom.xml需要添加:

<groupId>com.github.scribejava</groupId>
<artifactId>scribejava-httpclient-apache</artifactId>

代码需要添加:

//use Http Proxy
final HttpClientConfig clientConfig = new ApacheHttpClientConfig(HttpAsyncClientBuilder.create()
.setProxy(new HttpHost("1.0.0.0", 8080)));
twitterClient.getConfiguration().setHttpClientConfig(clientConfig);

当我用这个方案测试时,最终工作良好。

最新更新