private static void setCredentials(WebClient webClient) { String username = "user"; String password = "password"; String base64encodedUsernameAndPassword = base64Encode(username + ":" + password); webClient.addRequestHeader("Authorization", "Basic " + base64encodedUsernameAndPassword); } private static String base64Encode(String stringToEncode) { return DatatypeConverter.printBase64Binary(stringToEncode.getBytes()); }
public void addRequestHeader(String name,String value){ WebClient webClient = getWebClient(); webClient.addRequestHeader(name, value); headerNames.add(name); }
protected void addCookiesToHeader() { StringBuilder builder = new StringBuilder(); Map<String, String> cookies = getCookies(); for (Iterator<String> i = cookies.keySet().iterator(); i.hasNext();) { String key = i.next(); String value = cookies.get(key); builder.append(key).append("=").append(value); if (i.hasNext()) builder.append(";"); } getWebClient().addRequestHeader("Cookie", builder.toString()); }
/** * By default the HtmlUnit driver is set to en-us. This can cause problems * with formatters. */ private void setDriverLocale(final WebDriver driver) { try { final Field field = driver.getClass().getDeclaredField("webClient"); if (field != null) { final boolean original = field.isAccessible(); field.setAccessible(true); final WebClient webClient = (WebClient) field.get(driver); if (webClient != null) { webClient.addRequestHeader("Accept-Language", "en-gb"); } field.setAccessible(original); } else { Assert.fail("Failed to get webclient field to set accept language"); } } catch (final IllegalAccessException ex) { LOG.warn(ex.getMessage()); } catch (final SecurityException e) { LOG.warn(e.getMessage()); } catch (final NoSuchFieldException e) { LOG.warn(e.getMessage()); } }
@Override public void get(String url) { getWebClient().addRequestHeader(HttpHeaders.ACCEPT, MediaType.TEXT_HTML); super.get(url); getWebClient().removeRequestHeader(HttpHeaders.ACCEPT); }
/** * Constructor of the Jira Site Handler object. * * @param tc is the caller test case * @param environment provide the Environment object of Gepard, it must contain connectivity info to JIRA. */ public JiraSiteHandler(final GepardTestClass tc, final Environment environment) { this.environment = environment; webClient = new WebClient(); webClient.getOptions().setJavaScriptEnabled(false); webClient.getOptions().setThrowExceptionOnScriptError(false); webClient.getOptions().setUseInsecureSSL(true); String phrase = Base64.encode((environment.getProperty(Environment.JIRA_SITE_USERNAME) + ":" + environment.getProperty(Environment.JIRA_SITE_PASSWORD)).getBytes()); webClient.addRequestHeader("Authorization", "Basic " + phrase); try { JSONObject serverInfo = getJiraServerInfo(); String serverTitle = serverInfo.get("serverTitle").toString(); String version = serverInfo.get("version").toString(); tc.logComment("Connected to JIRA Server: \"" + serverTitle + "\", version: " + version); } catch (FailingHttpStatusCodeException | IOException | JSONException e) { throw new SimpleGepardException("Cannot connect to JIRA properly, pls check the settings, reason: " + e.getMessage(), e); } }
if (StringUtils.isNotBlank(userAgent)) { driver.removeRequestHeader(USER_AGENT); driver.addRequestHeader(USER_AGENT, userAgent);
@Override public void init(JobContext context, String pluginId) throws SparklerException { super.init(context, pluginId); //TODO: get timeouts from configurations driver = new WebClient(BrowserVersion.BEST_SUPPORTED); driver.setJavaScriptTimeout(DEFAULT_JS_TIMEOUT); WebClientOptions options = driver.getOptions(); options.setCssEnabled(false); options.setAppletEnabled(false); options.setDownloadImages(false); options.setJavaScriptEnabled(true); options.setTimeout(DEFAULT_TIMEOUT); options.setUseInsecureSSL(true); options.setPopupBlockerEnabled(true); options.setDoNotTrackEnabled(true); options.setGeolocationEnabled(false); options.setHistorySizeLimit(2); options.setPrintContentOnFailingStatusCode(false); options.setThrowExceptionOnScriptError(false); options.setThrowExceptionOnFailingStatusCode(false); if (this.httpHeaders != null && !this.httpHeaders.isEmpty()) { LOG.info("Found {} headers", this.httpHeaders.size()); this.httpHeaders.forEach((name, val) -> driver.addRequestHeader(name, val)); } else { LOG.info("No user headers found"); } }
wc.addRequestHeader(requestHeader.getKey(), requestHeader.getValue());