public static Response put(String url, List<? extends FormData> multipartFormData) throws IOException { Request request = new Request(url); request.setMultipartFormData(multipartFormData); return put(request); }
public Request addQueryParam(QueryParam queryParam) { getQueryParams().add(queryParam); return this; }
.append(" " + method + " " + request.getUrl() + "\n") .append(" Charset: " + request.getCharset() + "\n") .append(" Content-Type: " + request.getContentType() + "\n") .append(" Referer: " + request.getReferer() + "\n") .append(" User-Agent: " + request.getUserAgent() + "\n"); for (String name : request.getHeaderNames()) { requestInfo.append(" " + name + ": " + request.getHeader(name) + "\n"); HttpURLConnection conn = request.toHttpURLConnection(method); conn.setRequestProperty("Connection", "close"); if (request.getCharset() != null) { conn.setRequestProperty("Accept-Charset", request.getCharset()); if (request.getBytes() != null) { conn.setDoOutput(true); conn.setRequestProperty("Content-Type", request.getContentType()); outputStream.write(request.getBytes()); } finally { IOUtil.closeSafely(outputStream); } else if (request.getFormParams() != null && request.getFormParams().size() > 0) { conn.setDoOutput(true); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); byte[] body = request.getRequestBody().asApplicationXWwwFormUrlencoded(); OutputStream outputStream = conn.getOutputStream(); try {
public static Response post(String url, Map<String, ?> formParams) throws IOException { return post(new Request(url, formParams)); }
public HttpURLConnection toHttpURLConnection(Method method) throws IOException { // set additional query parameters if (getQueryParams() != null && getQueryParams().size() > 0) { for (QueryParam queryParam : getQueryParams()) { if (queryParam != null && queryParam.getValue() != null) { String name = queryParam.getName(); String value = String.valueOf(queryParam.getValue()); String newParam = HTTP.urlEncode(name) + "=" + HTTP.urlEncode(value); url += (url.contains("?") ? "&" : "?") + newParam; } } } HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection(); conn.setRequestMethod(method.toString()); conn.setConnectTimeout(connectTimeoutMillis); conn.setReadTimeout(readTimeoutMillis); conn.setInstanceFollowRedirects(followRedirects); // HTTP header injection is checked by HttpURLConnection conn.setRequestProperty("User-Agent", getUserAgent()); for (String headerKey : headers.keySet()) { conn.setRequestProperty(headerKey, headers.get(headerKey)); } return conn; }
public Request addQueryParam(String name, Object value) { return addQueryParam(new QueryParam(name, value)); }
public byte[] asApplicationXWwwFormUrlencoded() { Map<String, ?> formParams = request.getFormParams(); StringBuilder sb = new StringBuilder(); for (String key : request.getFormParams().keySet()) { Object value = formParams.get(key); if (value != null) { if (value instanceof Object[]) { for (Object paramValue : (Object[])value) { asApplicationXWwwFormUrlencoded_addParam(sb, key, paramValue); } } else if (value instanceof Iterable) { for (Object paramValue : (Iterable<?>)value) { asApplicationXWwwFormUrlencoded_addParam(sb, key, paramValue); } } else { asApplicationXWwwFormUrlencoded_addParam(sb, key, (Object)value); } } } return sb.toString().getBytes(); }
public byte[] asMultipart(String boundary) throws IOException { ByteArrayOutputStream os = new ByteArrayOutputStream(); try { for (FormData formData : request.getMultipartFormData()) { StringBuilder sb = new StringBuilder(); sb.append("--");
.append(" " + method + " " + request.getUrl() + "\n") .append(" Charset: " + request.getCharset() + "\n") .append(" Content-Type: " + request.getContentType() + "\n") .append(" Referer: " + request.getReferer() + "\n") .append(" User-Agent: " + request.getUserAgent() + "\n"); for (String name : request.getHeaderNames()) { requestInfo.append(" " + name + ": " + request.getHeader(name) + "\n"); HttpURLConnection conn = request.toHttpURLConnection(method); conn.setRequestProperty("Connection", "close"); if (request.getCharset() != null) { conn.setRequestProperty("Accept-Charset", request.getCharset()); if (request.getBytes() != null) { conn.setDoOutput(true); conn.setRequestProperty("Content-Type", request.getContentType()); outputStream.write(request.getBytes()); } finally { IOUtil.closeSafely(outputStream); } else if (request.getFormParams() != null && request.getFormParams().size() > 0) { conn.setDoOutput(true); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); byte[] body = request.getRequestBody().asApplicationXWwwFormUrlencoded(); OutputStream outputStream = conn.getOutputStream(); try {
public static Response delete(String url) throws IOException { return delete(new Request(url)); }
public HttpURLConnection toHttpURLConnection(Method method) throws IOException { // set additional query parameters if (getQueryParams() != null && getQueryParams().size() > 0) { for (QueryParam queryParam : getQueryParams()) { if (queryParam != null && queryParam.getValue() != null) { String name = queryParam.getName(); String value = String.valueOf(queryParam.getValue()); String newParam = HTTP.urlEncode(name) + "=" + HTTP.urlEncode(value); url += (url.contains("?") ? "&" : "?") + newParam; } } } HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection(); conn.setRequestMethod(method.toString()); conn.setConnectTimeout(connectTimeoutMillis); conn.setReadTimeout(readTimeoutMillis); conn.setInstanceFollowRedirects(followRedirects); // HTTP header injection is checked by HttpURLConnection conn.setRequestProperty("User-Agent", getUserAgent()); for (String headerKey : headers.keySet()) { conn.setRequestProperty(headerKey, headers.get(headerKey)); } return conn; }
public Request addQueryParam(String name, Object value) { return addQueryParam(new QueryParam(name, value)); }
public byte[] asApplicationXWwwFormUrlencoded() { Map<String, ?> formParams = request.getFormParams(); StringBuilder sb = new StringBuilder(); for (String key : request.getFormParams().keySet()) { Object value = formParams.get(key); if (value != null) { if (value instanceof Object[]) { for (Object paramValue : (Object[])value) { asApplicationXWwwFormUrlencoded_addParam(sb, key, paramValue); } } else if (value instanceof Iterable) { for (Object paramValue : (Iterable<?>)value) { asApplicationXWwwFormUrlencoded_addParam(sb, key, paramValue); } } else { asApplicationXWwwFormUrlencoded_addParam(sb, key, (Object)value); } } } return sb.toString().getBytes(); }
public byte[] asMultipart(String boundary) throws IOException { ByteArrayOutputStream os = new ByteArrayOutputStream(); try { for (FormData formData : request.getMultipartFormData()) { StringBuilder sb = new StringBuilder(); sb.append("--");
.append(" " + method + " " + request.getUrl() + "\n") .append(" Charset: " + request.getCharset() + "\n") .append(" Content-Type: " + request.getContentType() + "\n") .append(" Referer: " + request.getReferer() + "\n") .append(" User-Agent: " + request.getUserAgent() + "\n"); for (String name : request.getHeaderNames()) { requestInfo.append(" " + name + ": " + request.getHeader(name) + "\n"); HttpURLConnection conn = request.toHttpURLConnection(method); conn.setRequestProperty("Connection", "close"); if (request.getCharset() != null) { conn.setRequestProperty("Accept-Charset", request.getCharset()); if (request.getBytes() != null) { conn.setDoOutput(true); conn.setRequestProperty("Content-Type", request.getContentType()); outputStream.write(request.getBytes()); } finally { IOUtil.closeSafely(outputStream); } else if (request.getFormParams() != null && request.getFormParams().size() > 0) { conn.setDoOutput(true); conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); byte[] body = request.getRequestBody().asApplicationXWwwFormUrlencoded(); OutputStream outputStream = conn.getOutputStream(); try {
public static Response post(String url, List<? extends FormData> multipartFormData) throws IOException { Request request = new Request(url); request.setMultipartFormData(multipartFormData); return post(request); }
public static Response trace(String url) throws IOException { return trace(new Request(url)); }