List of usage examples for javax.net.ssl HttpsURLConnection setReadTimeout
public void setReadTimeout(int timeout)
From source file:com.voa.weixin.utils.HttpUtils.java
/** * httpspost?/*from w w w. j ava2 s .c o m*/ * * @param url * @param param * @return * @throws Exception */ private static String doHttps(String url, String param, String method) throws Exception { HttpsURLConnection conn = null; OutputStream out = null; String rsp = null; byte[] content = param.getBytes("utf-8"); try { try { SSLContext ctx = SSLContext.getInstance("TLS"); ctx.init(new KeyManager[0], new TrustManager[] { new DefaultTrustManager() }, new SecureRandom()); SSLContext.setDefault(ctx); conn = getConnection(new URL(url), method, ctype); conn.setHostnameVerifier(new HostnameVerifier() { @Override public boolean verify(String hostname, SSLSession session) { return true; } }); conn.setConnectTimeout(60000); conn.setReadTimeout(60000); } catch (Exception e) { throw e; } try { out = conn.getOutputStream(); if (StringUtils.isNotBlank(param)) out.write(content); rsp = getResponseAsString(conn); } catch (IOException e) { throw e; } } finally { if (out != null) { out.close(); } if (conn != null) { conn.disconnect(); } } return rsp; }
From source file:org.wso2.carbon.sample.service.EventsManagerService.java
public String performPostCall(String requestURL, Map<String, String> postDataParams) throws HttpException, IOException { URL url;/*from w w w .java 2 s.c om*/ String response = ""; url = new URL(requestURL); HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); conn.setReadTimeout(15000); conn.setConnectTimeout(15000); conn.setRequestMethod("POST"); conn.setDoInput(true); conn.setDoOutput(true); OutputStream os = conn.getOutputStream(); BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(os, "UTF-8")); writer.write(getPostDataString(postDataParams)); writer.flush(); writer.close(); os.close(); int responseCode = conn.getResponseCode(); if (responseCode == HttpsURLConnection.HTTP_OK) { String line; BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream())); while ((line = br.readLine()) != null) { response += line; } } else { response = ""; throw new HttpException(responseCode + ""); } return response; }
From source file:hudson.plugins.boundary.Boundary.java
public void sendEvent(AbstractBuild<?, ?> build, BuildListener listener) throws IOException { final HashMap<String, Object> event = new HashMap<String, Object>(); event.put("fingerprintFields", Arrays.asList("build name")); final Map<String, String> source = new HashMap<String, String>(); String hostname = "localhost"; try {//from w w w .jav a2 s . co m hostname = java.net.InetAddress.getLocalHost().getHostName(); } catch (UnknownHostException e) { listener.getLogger().println("host lookup exception: " + e); } source.put("ref", hostname); source.put("type", "jenkins"); event.put("source", source); final Map<String, String> properties = new HashMap<String, String>(); properties.put("build status", build.getResult().toString()); properties.put("build number", build.getDisplayName()); properties.put("build name", build.getProject().getName()); event.put("properties", properties); event.put("title", String.format("Jenkins Build Job - %s - %s", build.getProject().getName(), build.getDisplayName())); if (Result.SUCCESS.equals(build.getResult())) { event.put("severity", "INFO"); event.put("status", "CLOSED"); } else { event.put("severity", "WARN"); event.put("status", "OPEN"); } final String url = String.format("https://api.boundary.com/%s/events", this.id); final HttpsURLConnection conn = (HttpsURLConnection) new URL(url).openConnection(); conn.setConnectTimeout(30000); conn.setReadTimeout(30000); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "application/json"); final String authHeader = "Basic " + new String(Base64.encodeBase64((token + ":").getBytes(), false)); conn.setRequestProperty("Authorization", authHeader); conn.setDoInput(true); conn.setDoOutput(true); InputStream is = null; OutputStream os = null; try { os = conn.getOutputStream(); OBJECT_MAPPER.writeValue(os, event); os.flush(); is = conn.getInputStream(); } finally { close(is); close(os); } final int responseCode = conn.getResponseCode(); if (responseCode != HttpURLConnection.HTTP_CREATED) { listener.getLogger().println("Invalid HTTP response code from Boundary API: " + responseCode); } else { String location = conn.getHeaderField("Location"); if (location.startsWith("http:")) { location = "https" + location.substring(4); } listener.getLogger().println("Created Boundary Event: " + location); } }
From source file:xyz.karpador.godfishbot.commands.QuoteCommand.java
@Override public CommandResult getReply(String params, Message message, String myName) { try {//from w w w . j a v a 2 s. c om String cat = Main.Random.nextInt(2) == 0 ? "famous" : "movies"; URL url = new URL("https://andruxnet-random-famous-quotes.p.mashape.com/?cat=" + cat + "&count=1"); HttpsURLConnection con = (HttpsURLConnection) url.openConnection(); con.setRequestProperty("X-Mashape-Key", BotConfig.getInstance().getMashapeToken()); con.setRequestProperty("Accept", "application/json"); con.setReadTimeout(5000); if (con.getResponseCode() == HTTP_OK) { BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream())); String result = br.readLine(); JSONObject resultJson = new JSONObject(result); String cmdResult = "" + resultJson.getString("quote") + " - " + resultJson.getString("author"); return new CommandResult(cmdResult); } } catch (IOException | JSONException e) { e.printStackTrace(); } return null; }
From source file:org.transitime.custom.missionBay.SfmtaApiCaller.java
/** * Posts the JSON string to the URL. For either the telemetry or the stop * command.// w ww. j a v a 2 s . c o m * * @param baseUrl * @param jsonStr * @return True if successfully posted the data */ private static boolean post(String baseUrl, String jsonStr) { try { // Create the connection URL url = new URL(baseUrl); HttpsURLConnection con = (HttpsURLConnection) url.openConnection(); // Set parameters for the connection con.setRequestMethod("POST"); con.setRequestProperty("content-type", "application/json"); con.setDoOutput(true); con.setDoInput(true); con.setUseCaches(false); // API now uses basic authentication String authString = login.getValue() + ":" + password.getValue(); byte[] authEncBytes = Base64.encodeBase64(authString.getBytes()); String authStringEnc = new String(authEncBytes); con.setRequestProperty("Authorization", "Basic " + authStringEnc); // Set the timeout so don't wait forever (unless timeout is set to 0) int timeoutMsec = timeout.getValue(); con.setConnectTimeout(timeoutMsec); con.setReadTimeout(timeoutMsec); // Write the json data to the connection DataOutputStream wr = new DataOutputStream(con.getOutputStream()); wr.writeBytes(jsonStr); wr.flush(); wr.close(); // Get the response int responseCode = con.getResponseCode(); // If wasn't successful then log the response so can debug if (responseCode != 200) { String responseStr = ""; if (responseCode != 500) { // Response code indicates there was a problem so get the // reply in case API returned useful error message InputStream inputStream = con.getErrorStream(); if (inputStream != null) { BufferedReader in = new BufferedReader(new InputStreamReader(inputStream)); String inputLine; StringBuffer response = new StringBuffer(); while ((inputLine = in.readLine()) != null) { response.append(inputLine); } in.close(); responseStr = response.toString(); } } // Lot that response code indicates there was a problem logger.error( "Bad HTTP response {} when writing data to SFMTA " + "API. Response text=\"{}\" URL={} json=\n{}", responseCode, responseStr, baseUrl, jsonStr); } // Done so disconnect just for the heck of it con.disconnect(); // Return whether was successful return responseCode == 200; } catch (IOException e) { logger.error("Exception when writing data to SFMTA API: \"{}\" " + "URL={} json=\n{}", e.getMessage(), baseUrl, jsonStr); // Return that was unsuccessful return false; } }
From source file:xin.nic.sdk.registrar.util.HttpUtil.java
/** * ??HTTPS GET/*from ww w .j a v a2 s . com*/ * * @param url URL * @return */ public static HttpResp doHttpsGet(URL url) { HttpsURLConnection conn = null; InputStream inputStream = null; Reader reader = null; try { // ???httphttps String protocol = url.getProtocol(); if (!PROTOCOL_HTTPS.equals(protocol)) { throw new XinException("xin.error.url", "?https"); } // conn = (HttpsURLConnection) url.openConnection(); SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, tmArr, new SecureRandom()); conn.setSSLSocketFactory(sc.getSocketFactory()); // ? conn.setConnectTimeout(connTimeout); conn.setReadTimeout(readTimeout); conn.setDoOutput(true); conn.setDoInput(true); // UserAgent conn.setRequestProperty("User-Agent", "java-sdk"); // ? conn.connect(); // ? inputStream = conn.getInputStream(); reader = new InputStreamReader(inputStream, charset); BufferedReader bufferReader = new BufferedReader(reader); StringBuilder stringBuilder = new StringBuilder(); String inputLine = ""; while ((inputLine = bufferReader.readLine()) != null) { stringBuilder.append(inputLine); stringBuilder.append("\n"); } // HttpResp resp = new HttpResp(); resp.setStatusCode(conn.getResponseCode()); resp.setStatusPhrase(conn.getResponseMessage()); resp.setContent(stringBuilder.toString()); // return resp; } catch (MalformedURLException e) { throw new XinException("xin.error.url", "url:" + url + ", url?"); } catch (IOException e) { throw new XinException("xin.error.http", String.format("IOException:%s", e.getMessage())); } catch (KeyManagementException e) { throw new XinException("xin.error.url", "url:" + url + ", url?"); } catch (NoSuchAlgorithmException e) { throw new XinException("xin.error.url", "url:" + url + ", url?"); } finally { if (reader != null) { try { reader.close(); } catch (IOException e) { throw new XinException("xin.error.url", "url:" + url + ", reader"); } } if (inputStream != null) { try { inputStream.close(); } catch (IOException e) { throw new XinException("xin.error.url", "url:" + url + ", ?"); } } // quietClose(conn); } }
From source file:org.wso2.carbon.automation.test.utils.http.client.HttpsURLConnectionClient.java
public static HttpsResponse postWithBasicAuth(String uri, String requestQuery, String contentType, String userName, String password) throws IOException { if (uri.startsWith("https://")) { URL url = new URL(uri); HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); conn.setRequestMethod("POST"); String encode = new String( new org.apache.commons.codec.binary.Base64().encode((userName + ":" + password).getBytes())) .replaceAll("\n", ""); conn.setRequestProperty("Authorization", "Basic " + encode); conn.setDoOutput(true); // Triggers POST. conn.setRequestProperty("Content-Type", contentType); conn.setRequestProperty("charset", "utf-8"); conn.setRequestProperty("Content-Length", "" + Integer.toString(requestQuery.getBytes().length)); conn.setUseCaches(false);//w w w .j a v a 2 s. c om conn.setHostnameVerifier(new HostnameVerifier() { public boolean verify(String hostname, SSLSession session) { return true; } }); DataOutputStream wr = new DataOutputStream(conn.getOutputStream()); wr.writeBytes(requestQuery); conn.setReadTimeout(10000); conn.connect(); System.out.println(conn.getRequestMethod()); // Get the response StringBuilder sb = new StringBuilder(); BufferedReader rd = null; try { rd = new BufferedReader(new InputStreamReader(conn.getInputStream(), Charset.defaultCharset())); String line; while ((line = rd.readLine()) != null) { sb.append(line); } } catch (FileNotFoundException ignored) { } finally { if (rd != null) { rd.close(); } wr.flush(); wr.close(); conn.disconnect(); } return new HttpsResponse(sb.toString(), conn.getResponseCode()); } return null; }
From source file:com.google.android.apps.picview.request.CachedWebRequestFetcher.java
/** * Fetches the given URL from the web./*w w w . ja v a 2 s . c o m*/ */ public String fetchFromWeb(URL url) { Log.d(TAG, "Fetching from web: " + url.toString()); HttpsURLConnection conn = null; HttpResponse resp = null; try { conn = (HttpsURLConnection) url.openConnection(); conn.setUseCaches(false); conn.setReadTimeout(30000); // 30 seconds. conn.setDoInput(true); conn.addRequestProperty("GData-Version", "2"); conn.connect(); InputStream is = conn.getInputStream(); return readStringFromStream(is); } catch (Exception e) { Log.v(TAG, readStringFromStream(conn.getErrorStream())); e.printStackTrace(); } return null; }
From source file:io.fabric8.apiman.BearerTokenFilter.java
/** * Validates the bearer token with the kubernetes oapi and returns the username * if it is a valid token.// w w w . j av a 2s . c om * * @param bearerHeader * @return username of the user to whom the token was issued to * @throws IOException - when the token is invalid, or oapi cannot be reached. */ protected String validateBearerToken(String bearerHeader) throws IOException { ObjectMapper mapper = new ObjectMapper(); HttpsURLConnection con = (HttpsURLConnection) kubernetesOsapiUrl.openConnection(); con.setRequestProperty("Authorization", bearerHeader); con.setConnectTimeout(10000); con.setReadTimeout(10000); con.setRequestProperty("Content-Type", "application/json"); if (kubernetesTrustCert) TrustEverythingSSLTrustManager.trustAllSSLCertificates(con); con.connect(); OAuthClientAuthorizationList userList = mapper.readValue(con.getInputStream(), OAuthClientAuthorizationList.class); String userName = userList.getItems().get(0).getMetadata().getName(); return userName; }
From source file:org.wso2.carbon.automation.test.utils.http.client.HttpsURLConnectionClient.java
public static HttpsResponse putWithBasicAuth(String uri, String requestQuery, String contentType, String userName, String password) throws IOException { if (uri.startsWith("https://")) { URL url = new URL(uri); HttpsURLConnection conn = (HttpsURLConnection) url.openConnection(); conn.setRequestMethod("POST"); String encode = new String( new org.apache.commons.codec.binary.Base64().encode((userName + ":" + password).getBytes())) .replaceAll("\n", ""); ;/* www. jav a2 s . c o m*/ conn.setRequestProperty("Authorization", "Basic " + encode); conn.setDoOutput(true); // Triggers POST. conn.setRequestProperty("Content-Type", contentType); conn.setRequestProperty("charset", "utf-8"); conn.setRequestProperty("Content-Length", "" + Integer.toString(requestQuery.getBytes().length)); conn.setUseCaches(false); conn.setHostnameVerifier(new HostnameVerifier() { public boolean verify(String hostname, SSLSession session) { return true; } }); DataOutputStream wr = new DataOutputStream(conn.getOutputStream()); wr.writeBytes(requestQuery); conn.setReadTimeout(10000); conn.connect(); // Get the response StringBuilder sb = new StringBuilder(); BufferedReader rd = null; try { rd = new BufferedReader(new InputStreamReader(conn.getInputStream(), Charset.defaultCharset())); String line; while ((line = rd.readLine()) != null) { sb.append(line); } } catch (FileNotFoundException ignored) { } finally { if (rd != null) { rd.close(); } wr.flush(); wr.close(); conn.disconnect(); } return new HttpsResponse(sb.toString(), conn.getResponseCode()); } return null; }