1 /******************************************************************************* 2 * Copyright 2011 See AUTHORS file. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 ******************************************************************************/ 16 17 package com.badlogic.gdx.net; 18 19 /** A list of common request header constants of the HTTP protocol. See http://en.wikipedia.org/wiki/List_of_HTTP_header_fields. 20 * @author Daniel Holderbaum */ 21 public interface HttpRequestHeader { 22 23 /** Content-Types that are acceptable for the response. 24 * <p> 25 * Example: Accept: text/plain */ 26 public static final String Accept = "Accept"; 27 28 /** Character sets that are acceptable. 29 * <p> 30 * Example: Accept-Charset: utf-8 */ 31 public static final String AcceptCharset = "Accept-Charset"; 32 33 /** List of acceptable encodings. 34 * <p> 35 * Example: Accept-Encoding: gzip, deflate */ 36 public static final String AcceptEncoding = "Accept-Encoding"; 37 38 /** List of acceptable human languages for response. 39 * <p> 40 * Example: Accept-Language: en-US */ 41 public static final String AcceptLanguage = "Accept-Language"; 42 43 /** Acceptable version in time. 44 * <p> 45 * Example: Accept-Datetime: Thu, 31 May 2007 20:35:00 GMT */ 46 public static final String AcceptDatetime = "Accept-Datetime"; 47 48 /** Authentication credentials for HTTP authentication. 49 * <p> 50 * Example: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== */ 51 public static final String Authorization = "Authorization"; 52 53 /** Used to specify directives that must be obeyed by all caching mechanisms along the request-response chain. 54 * <p> 55 * Example: Cache-Control: no-cache */ 56 public static final String CacheControl = "Cache-Control"; 57 58 /** What type of connection the user-agent would prefer. 59 * <p> 60 * Example: Connection: keep-alive */ 61 public static final String Connection = "Connection"; 62 63 /** An HTTP cookie previously sent by the server with Set-Cookie (below). 64 * <p> 65 * Example: Cookie: $Version=1=""; Skin=new=""; */ 66 public static final String Cookie = "Cookie"; 67 68 /** The length of the request body in octets (8-bit bytes). 69 * <p> 70 * Example: Content-Length: 348 */ 71 public static final String ContentLength = "Content-Length"; 72 73 /** A Base64-encoded binary MD5 sum of the content of the request body. 74 * <p> 75 * Example: Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ== */ 76 public static final String ContentMD5 = "Content-MD5"; 77 78 /** The MIME type of the body of the request (used with POST and PUT requests). 79 * <p> 80 * Example: Content-Type: application/x-www-form-urlencoded */ 81 public static final String ContentType = "Content-Type"; 82 83 /** The date and time that the message was sent (in "HTTP-date" format as defined by RFC 7231). 84 * <p> 85 * Example: Date: Tue, 15 Nov 1994 08:12:31 GMT */ 86 public static final String Date = "Date"; 87 88 /** Indicates that particular server behaviors are required by the client. 89 * <p> 90 * Example: Expect: 100-continue */ 91 public static final String Expect = "Expect"; 92 93 /** The email address of the user making the request. 94 * <p> 95 * Example: From: user@example.com */ 96 public static final String From = "From"; 97 98 /** The domain name of the server (for virtual hosting), and the TCP port number on which the server is listening. The port 99 * number may be omitted if the port is the standard port for the service requested. 100 * <p> 101 * Example: en.wikipedia.org */ 102 public static final String Host = "Host"; 103 104 /** Only perform the action if the client supplied entity matches the same entity on the server. This is mainly for methods like 105 * PUT to only update a resource if it has not been modified since the user last updated it. 106 * <p> 107 * Example: If-Match: "737060cd8c284d8af7ad3082f209582d" */ 108 public static final String IfMatch = "If-Match"; 109 110 /** Allows a 304 Not Modified to be returned if content is unchanged. 111 * <p> 112 * Example: If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT */ 113 public static final String IfModifiedSince = "If-Modified-Since"; 114 115 /** Allows a 304 Not Modified to be returned if content is unchanged, see HTTP ETag. 116 * <p> 117 * Example: If-None-Match: "737060cd8c284d8af7ad3082f209582d" */ 118 public static final String IfNoneMatch = "If-None-Match"; 119 120 /** If the entity is unchanged, send me the part(s) that I am missing=""; otherwise, send me the entire new entity. 121 * <p> 122 * Example: If-Range: "737060cd8c284d8af7ad3082f209582d" */ 123 public static final String IfRange = "If-Range"; 124 125 /** Only send the response if the entity has not been modified since a specific time. 126 * <p> 127 * Example: If-Unmodified-Since: Sat, 29 Oct 1994 19:43:31 GMT */ 128 public static final String IfUnmodifiedSince = "If-Unmodified-Since"; 129 130 /** Limit the number of times the message can be forwarded through proxies or gateways. 131 * <p> 132 * Example: Max-Forwards: 10 */ 133 public static final String MaxForwards = "Max-Forwards"; 134 135 /** Initiates a request for cross-origin resource sharing (asks server for an 'Access-Control-Allow-Origin' response field). 136 * <p> 137 * Example: Origin: http://www.example-social-network.com */ 138 public static final String Origin = "Origin"; 139 140 /** Implementation-specific fields that may have various effects anywhere along the request-response chain. 141 * <p> 142 * Example: Pragma: no-cache */ 143 public static final String Pragma = "Pragma"; 144 145 /** Authorization credentials for connecting to a proxy. 146 * <p> 147 * Example: Proxy-Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== */ 148 public static final String ProxyAuthorization = "Proxy-Authorization"; 149 150 /** Request only part of an entity. Bytes are numbered from 0. 151 * <p> 152 * Example: Range: bytes=500-999 */ 153 public static final String Range = "Range"; 154 155 /** This is the address of the previous web page from which a link to the currently requested page was followed. (The word 156 * "referrer" has been misspelled in the RFC as well as in most implementations to the point that it has become standard usage 157 * and is considered correct terminology). 158 * <p> 159 * Example: Referer: http://en.wikipedia.org/wiki/Main_Page */ 160 public static final String Referer = "Referer"; 161 162 /** The transfer encodings the user agent is willing to accept: the same values as for the response header field 163 * Transfer-Encoding can be used, plus the "trailers" value (related to the "chunked" transfer method) to notify the server it 164 * expects to receive additional fields in the trailer after the last, zero-sized, chunk. 165 * <p> 166 * Example: TE: trailers, deflate */ 167 public static final String TE = "TE"; 168 169 /** The user agent string of the user agent. 170 * <p> 171 * Example: User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/21.0 */ 172 public static final String UserAgent = "User-Agent"; 173 174 /** Ask the server to upgrade to another protocol. 175 * <p> 176 * Example: Upgrade: HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11 */ 177 public static final String Upgrade = "Upgrade"; 178 179 /** Informs the server of proxies through which the request was sent. 180 * <p> 181 * Example: Via: 1.0 fred, 1.1 example.com (Apache/1.1) */ 182 public static final String Via = "Via"; 183 184 /** A general warning about possible problems with the entity body. 185 * <p> 186 * Example: Warning: 199 Miscellaneous warning */ 187 public static final String Warning = "Warning"; 188 189 } 190