Exemple #1
0
 /**
  * 构造函数
  *
  * @param policy 端口策略
  * @param serverAddress 服务器地址
  * @throws IOException 如果构造port失败
  */
 public TCPHttpPort(IConnectionPolicy policy, InetSocketAddress serverAddress) throws IOException {
   super(policy);
   ready = false;
   remoteClosed = false;
   remoteAddress = serverAddress;
   // 创建代理类
   proxy = new HttpProxy(this, policy.getProxyUsername(), policy.getProxyPassword());
   proxy.setProxyAddress(policy.getProxy());
   proxy.setRemoteAddress(serverAddress);
   channel = (SocketChannel) proxy.channel();
 }
Exemple #2
0
  public static void main(String[] args) throws Exception {
    String host;
    int port;
    if (args.length == 0) {
      // Start internal proxy
      ConnectProxyTunnelServer proxy = new ConnectProxyTunnelServer();
      proxy.start();
      host = "localhost";
      port = proxy.getLocalPort();
      out.println("Running with internal proxy: " + host + ":" + port);
    } else if (args.length == 2) {
      host = args[0];
      port = Integer.valueOf(args[1]);
      out.println("Running against specified proxy server: " + host + ":" + port);
    } else {
      System.err.println("Usage: java HttpProxy [<proxy host> <proxy port>]");
      return;
    }

    HttpProxy p = new HttpProxy(host, port);
    p.test();
  }
Exemple #3
0
  // 获得设置代理的httpClent实例
  private CloseableHttpClient getHttpClientWithProxy(HttpProxy proxy) {
    HttpHost proxyHost = new HttpHost(proxy.getHost(), proxy.getPort());
    CredentialsProvider credentialsProvider = new BasicCredentialsProvider();
    credentialsProvider.setCredentials(
        new AuthScope(proxy.getHost(), proxy.getPort()),
        new UsernamePasswordCredentials(proxy.getUser(), proxy.getPassword()));

    return HttpClients.custom()
        .setProxy(proxyHost)
        .setDefaultCredentialsProvider(credentialsProvider)
        .build();
  }
Exemple #4
0
 /* (non-Javadoc)
  * @see edu.tsinghua.lumaqq.qq.net.IPort#start()
  */
 public void start() {
   proxy.start();
 }
Exemple #5
0
 /* (non-Javadoc)
  * @see edu.tsinghua.lumaqq.qq.net.IPort#dispose()
  */
 public void dispose() {
   proxy.dispose();
 }
Exemple #6
0
 /* (non-Javadoc)
  * @see edu.tsinghua.lumaqq.qq.IProxyHandler#proxyReady(java.net.InetSocketAddress)
  */
 public void proxyReady(InetSocketAddress bindAddress) throws IOException {
   ready = true;
   channel = (SocketChannel) proxy.channel();
   ((PortGate) getPool()).getPorter().register(this, SelectionKey.OP_READ);
 }