Https com proxy de saida

0 respostas
R

Bom dia pessoal,
Alguem sabe como conectar em uma pagina com protocolo de seguraca HTTPS :?: ,
por exemplo:https://url.
Obs: a sua rede possui proxy.

No meu exemplo eu valido meu proxy e tento uma conexao segura, mas da erro de
proxy nao autorizado, nao estou conseguindo resolver.
Talvez haja outra forma se fazer, se algum puder ajudar agradeco.

Abraco.

String proxyPassword = "senha do proxy";
					        String proxyUsername = "seu usuario";
					        String proxyHost = "ip";
					        String proxyPort = "porta";
					        String connectionURL = https://nome da url ;
					 
					        //configuracao de proxy
					        System.setProperty("https.proxyHost", proxyHost);
					        System.setProperty("https.proxyPort", proxyPort);
					        System.setProperty("https.proxySet", "true");  
					        
					        System.setProperty("proxyHost", proxyHost);
					        System.setProperty("proxyPort", proxyPort);
					        System.setProperty("proxySet", "true");
					        
					        System.setProperty("http.proxyHost", proxyHost);
					        System.setProperty("http.proxyPort", proxyPort);
					        System.setProperty("http.proxySet", "true");
					 
					        //configuracao de seguranca
					        System.setProperty("java.protocol.handler.pkgs", "com.sun.net.ssl.internal.www.protocol");
					        java.security.Provider prov = new com.sun.net.ssl.internal.ssl.Provider();
					        Security.addProvider(prov);
					        //create the connection
					        URL myURL = new URL(connectionURL);
					        URLConnection myConnection = myURL.openConnection();
					        
					        String strUserpass = proxyUsername + ":" + proxyPassword;  
					        sun.misc.BASE64Encoder encodedLogin = new sun.misc.BASE64Encoder();
				            String encodedPassword = encodedLogin.encode(strUserpass.getBytes());					  
					        
					        com.sun.net.ssl.HttpsURLConnection https = null;
					        
					        if (myConnection instanceof com.sun.net.ssl.HttpsURLConnection) {
					        	
					        	https = (com.sun.net.ssl.HttpsURLConnection)myConnection;
					        	https.setSSLSocketFactory(new SSLTunnelSocketFactory(System.getProperty("proxyHost"), System.getProperty("proxyPort")));
					           //((com.sun.net.ssl.HttpsURLConnection) myConnection).setSSLSocketFactory(new SSLTunnelSocketFactory(System.getProperty("proxyHost"), System.getProperty("proxyPort")));
					        }
					     	//	myConnection.setRequestProperty("Proxy-Authorization", "Basic " + encodedLogin);                            
						       // myConnection.setRequestProperty("Authorization", "Basic " + encodedLogin);  
						    https.setRequestProperty("Https-Proxy-Authorization", "Basic " + encodedLogin);
					        
					        myConnection.setDoInput(true);
					        myConnection.setDoOutput(true);
					        BufferedReader in;
					        try {
					            System.err.println("opening Input stream1");
					            in = new BufferedReader(new InputStreamReader(myConnection.getInputStream()));
					            String inputLine;
					            System.err.println("Input stream is Open1");
					        }catch (Exception e) {
								e.printStackTrace();
								System.out.println("oie");
							}
					} catch (Exception e) {
						// TODO: handle exception
					}
Criado 13 de setembro de 2010
Respostas 0
Participantes 1