public class HTTPTool
extends java.lang.Object
HTTP toolbox
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
BROWSER_CHROME |
static java.lang.String |
BROWSER_EDGE |
static java.lang.String |
BROWSER_FIREFOX |
static java.lang.String |
BROWSER_IE |
static java.lang.String |
BROWSER_IE11 |
static java.lang.String |
BROWSER_OPERA |
static java.lang.String |
BROWSER_SAFARI |
static java.lang.String |
BROWSER_SAFARI_ANDROID |
static java.lang.String |
BROWSER_SAFARI_IPAD |
static java.lang.String |
BROWSER_SAFARI_IPHONE |
static java.lang.String |
BROWSER_SAFARI_IPOD |
static java.lang.String |
DISP_ATTACH |
static java.lang.String |
DISP_INLINE |
static java.lang.String |
MEDIA_ARC |
static java.lang.String |
MEDIA_CSS |
static java.lang.String |
MEDIA_CSV |
static java.lang.String |
MEDIA_DOC |
static java.lang.String |
MEDIA_HTML |
static java.lang.String |
MEDIA_JS |
static java.lang.String |
MEDIA_JSON |
static java.lang.String |
MEDIA_MD |
static java.lang.String |
MEDIA_PDF |
static java.lang.String |
MEDIA_SQL |
static java.lang.String |
MEDIA_TXT |
static java.lang.String |
MEDIA_XLS |
static java.lang.String |
MEDIA_XML |
static java.lang.String |
MEDIA_ZIP |
static java.lang.String |
MIME_TYPE_CSS |
static java.lang.String |
MIME_TYPE_CSV |
static java.lang.String |
MIME_TYPE_DATA |
static java.lang.String |
MIME_TYPE_DOC |
static java.lang.String |
MIME_TYPE_FORM |
static java.lang.String |
MIME_TYPE_HTML |
static java.lang.String |
MIME_TYPE_JPG |
static java.lang.String |
MIME_TYPE_JS |
static java.lang.String |
MIME_TYPE_JSON |
static java.lang.String |
MIME_TYPE_MD |
static java.lang.String |
MIME_TYPE_PDF |
static java.lang.String |
MIME_TYPE_PNG |
static java.lang.String |
MIME_TYPE_RSS |
static java.lang.String |
MIME_TYPE_SQL |
static java.lang.String |
MIME_TYPE_TXT |
static java.lang.String |
MIME_TYPE_XLS |
static java.lang.String |
MIME_TYPE_XML |
static java.lang.String |
MIME_TYPE_ZIP |
static java.lang.String |
NULL
Form null constant
|
static java.lang.String |
X_AUTH_HEADER |
static java.lang.String |
X_METHOD_HEADER |
static java.lang.String |
X_SESSION_HEADER |
Constructor and Description |
---|
HTTPTool() |
Modifier and Type | Method and Description |
---|---|
static java.lang.String |
append(java.lang.String url,
java.util.Map<java.lang.String,java.lang.Object> params)
Alias for appendURLParameters
|
static java.lang.String |
append(java.lang.String url,
java.lang.String params)
Alias for appendURLParameters
|
static java.lang.String |
append(java.lang.String url,
java.lang.String name,
java.lang.Object value)
Alias for appendURLParameters
|
static java.lang.String |
appendURLParameter(java.lang.String url,
java.util.Map<java.lang.String,java.lang.Object> params)
Append GET parameters to URL
|
static java.lang.String |
appendURLParameter(java.lang.String url,
java.lang.String params)
Append GET parameters to URL
|
static java.lang.String |
appendURLParameter(java.lang.String url,
java.lang.String name,
java.lang.Object value)
Append a GET parameter to URL
|
static java.lang.String |
baseURL(java.lang.String url)
Get base URL without parameters
|
static java.lang.String[] |
call(java.net.HttpURLConnection conn,
java.lang.String request)
Call the HTTP request and disconnect
|
static java.lang.String[] |
call(java.net.HttpURLConnection conn,
java.lang.String request,
java.lang.String encoding)
Call the HTTP request and disconnect
|
static int |
callMultipart(java.net.HttpURLConnection conn,
java.lang.String[] textFields,
java.lang.String[] values,
java.lang.String[] fileFields,
java.lang.String[] filePaths,
java.lang.String[] dataFields,
byte[][] data)
Call the HTTP request with multi-part data
|
static java.lang.String[] |
callMultipartWithReturn(java.net.HttpURLConnection conn,
java.lang.String[] textFields,
java.lang.String[] values,
java.lang.String[] fileFields,
java.lang.String[] filePaths,
java.lang.String[] dataFields,
byte[][] data)
Call the HTTP request and disconnect with multi-part data
|
static java.lang.String |
decode(java.lang.Object data)
URL decode given string using platform encoding
|
static java.lang.String |
decode(java.lang.Object data,
java.lang.String encoding)
URL decode given string using specified encoding
|
static java.lang.String |
encode(java.lang.Object data)
URL encode given string using platform encoding
|
static java.lang.String |
encode(java.lang.Object data,
java.lang.String encoding)
URL encode given string using specified encoding
|
static java.util.HashMap<java.lang.String,java.lang.Object> |
getBasicAuthLoginPassword(java.lang.String auth)
Return user and password from a HTTP basic authentication string (base64 encoded).
|
static java.lang.String |
getBasicAuthString(java.lang.String user,
java.lang.String pwd)
Return HTTP basic authentication string (base64 encoded) for use in Authorization or Proxy-Authrorization headers
|
static int |
getCacheMaxAge(Grant g)
Returns configured maximum cache age
|
static java.lang.String |
getCookie(java.net.HttpURLConnection conn)
Get a connection cookies
|
static java.lang.String |
getExtensionFromMedia(java.lang.String media) |
static java.lang.String |
getHeaderField(java.net.HttpURLConnection conn,
java.lang.String name)
Get a connection header field
|
static int |
getIEVersion(java.lang.String userAgent)
Get Internet Explorer major version number (returns -1 if other browser)
|
static java.lang.String |
getMediaFromMimeType(java.lang.String mimeType) |
static java.lang.String |
getMimeTypeFromMedia(java.lang.String media) |
static java.lang.String |
getMimeTypeWithEncoding(java.lang.String mime) |
static java.lang.String |
getMimeTypeWithEncoding(java.lang.String mime,
java.lang.String encoding) |
static java.net.HttpURLConnection |
initConnection(java.lang.String url,
java.lang.String method,
java.lang.String contentType,
java.lang.String cookie,
java.lang.String user,
java.lang.String pwd,
boolean proxy,
int timeout)
Get one HTTP connection
|
static javax.net.ssl.HttpsURLConnection |
initConnectionSSL(java.lang.String url,
java.lang.String method,
java.lang.String contentType,
java.lang.String cookie,
java.io.InputStream jks,
java.lang.String pwd,
int timeout)
Get one HTTPS connection
|
static javax.net.ssl.HttpsURLConnection |
initConnectionSSL(java.lang.String url,
java.lang.String method,
java.lang.String contentType,
java.lang.String cookie,
java.lang.String user,
java.lang.String pwd,
boolean proxy,
int timeout)
Get one HTTPS connection
|
static boolean |
isBrowser(java.lang.String userAgent,
java.lang.String browser)
Checks if user agent is specified browser.
|
static boolean |
isChrome(java.lang.String userAgent)
Checks if user agent is Chrome.
|
static boolean |
isEdge(java.lang.String userAgent)
Checks if user agent is Edge.
|
static boolean |
isEmpty(java.lang.String value)
Check is HTTP value is empty or equals HTTP.NULL
|
static boolean |
isFirefox(java.lang.String userAgent)
Checks if user agent is Firefox.
|
static boolean |
isIE(java.lang.String userAgent)
Checks if user agent is Internet Explorer < 11.
|
static boolean |
isIE11(java.lang.String userAgent)
Checks if user agent is Internet Explorer 11.
|
static boolean |
isIEMaxVersion(java.lang.String userAgent,
int maxVersion)
Check if browser is Internet Explorer with specified major version number or less
|
static boolean |
isLegacyIE(java.lang.String userAgent)
Deprecated.
Use isIEMaxVersion
|
static boolean |
isMobileBrowser(java.lang.String userAgent)
Checks if user agent is a mobile browser.
|
static boolean |
isMobileSafari(java.lang.String userAgent)
Deprecated.
Use isMobileWebkit
|
static boolean |
isMobileWebkit(java.lang.String userAgent)
Checks if user agent is a iPhone/iPad/iPod/Android webkit browser.
|
static boolean |
isOpera(java.lang.String userAgent)
Checks if user agent is Opera.
|
static boolean |
isSafari(java.lang.String userAgent)
Checks if user agent is Safari.
|
static boolean |
isURLAbsolute(java.lang.String url)
Checks if URL is absolute
|
static void |
main(java.lang.String[] args) |
public static final java.lang.String NULL
public static final java.lang.String MIME_TYPE_FORM
public static final java.lang.String MIME_TYPE_DATA
public static final java.lang.String MIME_TYPE_HTML
public static final java.lang.String MIME_TYPE_JS
public static final java.lang.String MIME_TYPE_CSS
public static final java.lang.String MIME_TYPE_XML
public static final java.lang.String MIME_TYPE_TXT
public static final java.lang.String MIME_TYPE_CSV
public static final java.lang.String MIME_TYPE_JSON
public static final java.lang.String MIME_TYPE_SQL
public static final java.lang.String MIME_TYPE_MD
public static final java.lang.String MIME_TYPE_XLS
public static final java.lang.String MIME_TYPE_DOC
public static final java.lang.String MIME_TYPE_PDF
public static final java.lang.String MIME_TYPE_ZIP
public static final java.lang.String MIME_TYPE_RSS
public static final java.lang.String MIME_TYPE_PNG
public static final java.lang.String MIME_TYPE_JPG
public static final java.lang.String MEDIA_HTML
public static final java.lang.String MEDIA_JS
public static final java.lang.String MEDIA_CSS
public static final java.lang.String MEDIA_XML
public static final java.lang.String MEDIA_TXT
public static final java.lang.String MEDIA_CSV
public static final java.lang.String MEDIA_JSON
public static final java.lang.String MEDIA_SQL
public static final java.lang.String MEDIA_MD
public static final java.lang.String MEDIA_XLS
public static final java.lang.String MEDIA_PDF
public static final java.lang.String MEDIA_DOC
public static final java.lang.String MEDIA_ZIP
public static final java.lang.String MEDIA_ARC
public static final java.lang.String DISP_INLINE
public static final java.lang.String DISP_ATTACH
public static final java.lang.String X_METHOD_HEADER
public static final java.lang.String X_AUTH_HEADER
public static final java.lang.String X_SESSION_HEADER
public static final java.lang.String BROWSER_IE
public static final java.lang.String BROWSER_IE11
public static final java.lang.String BROWSER_EDGE
public static final java.lang.String BROWSER_FIREFOX
public static final java.lang.String BROWSER_CHROME
public static final java.lang.String BROWSER_SAFARI
public static final java.lang.String BROWSER_SAFARI_IPHONE
public static final java.lang.String BROWSER_SAFARI_IPAD
public static final java.lang.String BROWSER_SAFARI_IPOD
public static final java.lang.String BROWSER_SAFARI_ANDROID
public static final java.lang.String BROWSER_OPERA
public static boolean isEmpty(java.lang.String value)
value
- Value to checkpublic static int getCacheMaxAge(Grant g)
Returns configured maximum cache age
g
- Grantpublic static java.lang.String getMimeTypeWithEncoding(java.lang.String mime)
public static java.lang.String getMimeTypeWithEncoding(java.lang.String mime, java.lang.String encoding)
public static java.lang.String getMimeTypeFromMedia(java.lang.String media)
public static java.lang.String getMediaFromMimeType(java.lang.String mimeType)
public static java.lang.String getExtensionFromMedia(java.lang.String media)
public static boolean isBrowser(java.lang.String userAgent, java.lang.String browser)
userAgent
- User agent stringbrowser
- Browser's pattern in user agent (user HTTPTool.BROWSER_* constants)public static boolean isIE(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isIE11(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isEdge(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isFirefox(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isChrome(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isOpera(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isSafari(java.lang.String userAgent)
userAgent
- User agent stringpublic static int getIEVersion(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isIEMaxVersion(java.lang.String userAgent, int maxVersion)
userAgent
- User agent stringmaxVersion
- Maximum version to check if browser version is less or equals to it@Deprecated public static boolean isLegacyIE(java.lang.String userAgent)
@Deprecated public static boolean isMobileSafari(java.lang.String userAgent)
public static boolean isMobileWebkit(java.lang.String userAgent)
userAgent
- User agent stringpublic static boolean isMobileBrowser(java.lang.String userAgent)
userAgent
- User agent stringpublic static java.lang.String baseURL(java.lang.String url)
public static boolean isURLAbsolute(java.lang.String url)
public static java.lang.String encode(java.lang.Object data)
data
- Data to URL encode (if not a String then toString() is applied to Object)public static java.lang.String encode(java.lang.Object data, java.lang.String encoding)
data
- Data to URL encode (if not a String then toString() is applied to Object)encoding
- encodingpublic static java.lang.String decode(java.lang.Object data)
data
- Data to URL decode (if not a String then toString() is applied to Object)public static java.lang.String decode(java.lang.Object data, java.lang.String encoding)
data
- Data to URL decode (if not a String then toString() is applied to Object)encoding
- encodingpublic static java.lang.String append(java.lang.String url, java.lang.String params)
public static java.lang.String appendURLParameter(java.lang.String url, java.lang.String params)
url
- URLparams
- URL-encoded parameters (in the form name=value[&name=value[...]]public static java.lang.String append(java.lang.String url, java.lang.String name, java.lang.Object value)
public static java.lang.String appendURLParameter(java.lang.String url, java.lang.String name, java.lang.Object value)
url
- URLname
- Namevalue
- Non URL encoded valuepublic static java.lang.String append(java.lang.String url, java.util.Map<java.lang.String,java.lang.Object> params)
public static java.lang.String appendURLParameter(java.lang.String url, java.util.Map<java.lang.String,java.lang.Object> params)
url
- URLparams
- Map of name and non URL encoded valuespublic static java.lang.String getBasicAuthString(java.lang.String user, java.lang.String pwd)
user
- Userpwd
- Passwordpublic static java.util.HashMap<java.lang.String,java.lang.Object> getBasicAuthLoginPassword(java.lang.String auth) throws java.lang.Exception
auth
- Auth stringjava.lang.Exception
public static java.net.HttpURLConnection initConnection(java.lang.String url, java.lang.String method, java.lang.String contentType, java.lang.String cookie, java.lang.String user, java.lang.String pwd, boolean proxy, int timeout) throws java.lang.Exception
url
- Full URLmethod
- GET or POSTcontentType
- Content-Type headercookie
- Cookiesuser
- Optional user for HTTP basic authenticationpwd
- Optional password for HTTP basic authenticationproxy
- true to use user and pwd in the Proxy-Authorization header instead of the Authorization headertimeout
- timeout value in milliseconds, 0 is interpreted as an infinite timeoutjava.lang.Exception
public static javax.net.ssl.HttpsURLConnection initConnectionSSL(java.lang.String url, java.lang.String method, java.lang.String contentType, java.lang.String cookie, java.lang.String user, java.lang.String pwd, boolean proxy, int timeout) throws java.lang.Exception
url
- Full URLmethod
- GET or POSTcontentType
- Content-Type headercookie
- Cookiesuser
- Optional user for HTTP basic authenticationpwd
- Optional password for HTTP basic authenticationproxy
- true to use user and pwd in the Proxy-Authorization header instead of the Authorization headertimeout
- timeout value in milliseconds, 0 is interpreted as an infinite timeoutjava.lang.Exception
public static javax.net.ssl.HttpsURLConnection initConnectionSSL(java.lang.String url, java.lang.String method, java.lang.String contentType, java.lang.String cookie, java.io.InputStream jks, java.lang.String pwd, int timeout) throws java.lang.Exception
url
- Full URLmethod
- GET or POSTcontentType
- Content-Type headercookie
- Cookiesjks
- Optional JKS key store (as stream) for certificate based authenticationpwd
- Optional password for certificate based authenticationtimeout
- timeout value in milliseconds, 0 is interpreted as an infinite timeoutjava.lang.Exception
public static java.lang.String[] call(java.net.HttpURLConnection conn, java.lang.String request) throws java.lang.Exception
conn
- HTTP connectionrequest
- Message to sendjava.lang.Exception
- when status not equals to HTTP 200, 201 or 202public static java.lang.String[] call(java.net.HttpURLConnection conn, java.lang.String request, java.lang.String encoding) throws java.lang.Exception
conn
- HTTP connectionrequest
- Message to sendencoding
- Encoding (used to encode request to and to decode response from)java.lang.Exception
- when status not equals to HTTP 200, 201 or 202public static int callMultipart(java.net.HttpURLConnection conn, java.lang.String[] textFields, java.lang.String[] values, java.lang.String[] fileFields, java.lang.String[] filePaths, java.lang.String[] dataFields, byte[][] data) throws java.lang.Exception
conn
- HTTP connectiontextFields
- field names to sendvalues
- field valuesfileFields
- file names to sendfilePaths
- file local pathsdataFields
- data names to senddata
- bytes to sendjava.lang.Exception
public static java.lang.String[] callMultipartWithReturn(java.net.HttpURLConnection conn, java.lang.String[] textFields, java.lang.String[] values, java.lang.String[] fileFields, java.lang.String[] filePaths, java.lang.String[] dataFields, byte[][] data) throws java.lang.Exception
conn
- HTTP connectiontextFields
- field names to sendvalues
- field valuesfileFields
- file names to sendfilePaths
- file local pathsdataFields
- data names to senddata
- bytes to sendjava.lang.Exception
- when status not equals to HTTP 200public static java.lang.String getHeaderField(java.net.HttpURLConnection conn, java.lang.String name)
conn
- HTTP connectionname
- Header field namepublic static java.lang.String getCookie(java.net.HttpURLConnection conn)
conn
- HTTP connectionpublic static void main(java.lang.String[] args)
Copyright (c)2006-2014 Simplicite Software. All Rights Reserved.