Hi, im trying to request some data from a server using HttpWebRequest and HttpWebResponse classes.However all communications with the servers are encrypted using the HTTPS (HTTP over SSL) protocol. I have been given my username and password from the vendor. Question is how do I pass these into my request object. The vendor has provided me an example in Java but i cant read Java. Any ideas.
Thanks
public class URLReader {
public static void main(String[] args) throws Exception {
/*
* If you are running inside a proxy firewall, please also set the following
* Java system properties to the appropriate value:
* System.setProperty( "https.proxyHost", "<proxy_host>" );
* System.setProperty( "https.proxyPort", "<proxy_port>" );
*/
Properties sysProp = System.getProperties();
sysProp.put("java.protocol.handler.pkgs","com.sun.net.ssl.internal. System.setProperties(sysProp);
java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
javax.net.ssl.SSLSocketFactory sf = (javax.net.ssl.SSLSocketFactory) javax.net.ssl.SSLSocketFactory.getDefault();
javax.net.ssl.SSLSocket sock = null;
//Construct the base64 string required for HTTP authentication (Insert your account details here)
String user="<your_gid>";
String password="<your_password>";
String auth;
auth = "Basic " +new sun.misc.BASE64Encoder().encode((user + ":" + password).getBytes());
try {
//Prepare the connection details
URL ris = new URL("<URL of target server>");
HttpsURLConnection conn;
conn = (HttpsURLConnection)(ris.openConnection());
conn.setRequestMethod("GET");
conn.setRequestProperty("Authorization", " " + auth);
//Open connection and retrieve URL content
conn.connect();
InputStream is = conn.getInputStream();
BufferedReader in = new BufferedReader(
new InputStreamReader(is));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
catch (Exception e)
{
System.err.println("Exception " + e);
}
}
}
Thanks
public class URLReader {
public static void main(String[] args) throws Exception {
/*
* If you are running inside a proxy firewall, please also set the following
* Java system properties to the appropriate value:
* System.setProperty( "https.proxyHost", "<proxy_host>" );
* System.setProperty( "https.proxyPort", "<proxy_port>" );
*/
Properties sysProp = System.getProperties();
sysProp.put("java.protocol.handler.pkgs","com.sun.net.ssl.internal. System.setProperties(sysProp);
java.security.Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
javax.net.ssl.SSLSocketFactory sf = (javax.net.ssl.SSLSocketFactory) javax.net.ssl.SSLSocketFactory.getDefault();
javax.net.ssl.SSLSocket sock = null;
//Construct the base64 string required for HTTP authentication (Insert your account details here)
String user="<your_gid>";
String password="<your_password>";
String auth;
auth = "Basic " +new sun.misc.BASE64Encoder().encode((user + ":" + password).getBytes());
try {
//Prepare the connection details
URL ris = new URL("<URL of target server>");
HttpsURLConnection conn;
conn = (HttpsURLConnection)(ris.openConnection());
conn.setRequestMethod("GET");
conn.setRequestProperty("Authorization", " " + auth);
//Open connection and retrieve URL content
conn.connect();
InputStream is = conn.getInputStream();
BufferedReader in = new BufferedReader(
new InputStreamReader(is));
String inputLine;
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
in.close();
}
catch (Exception e)
{
System.err.println("Exception " + e);
}
}
}