org.json

Class HTTP

public class HTTP extends Object

Convert an HTTP header to a JSONObject and back.
Field Summary
static StringCRLF
Carriage return/line feed.
Method Summary
static JSONObjecttoJSONObject(String string)
Convert an HTTP header string into a JSONObject.
static StringtoString(JSONObject o)
Convert a JSONObject into an HTTP header.

Field Detail

CRLF

public static final String CRLF
Carriage return/line feed.

Method Detail

toJSONObject

public static JSONObject toJSONObject(String string)
Convert an HTTP header string into a JSONObject. It can be a request header or a response header. A request header will contain
{
    Method: "POST" (for example),
    "Request-URI": "/" (for example),
    "HTTP-Version": "HTTP/1.1" (for example)
 }
A response header will contain
{
    "HTTP-Version": "HTTP/1.1" (for example),
    "Status-Code": "200" (for example),
    "Reason-Phrase": "OK" (for example)
 }
In addition, the other parameters in the header will be captured, using the HTTP field names as JSON names, so that
    Date: Sun, 26 May 2002 18:06:04 GMT
    Cookie: Q=q2=PPEAsg--; B=677gi6ouf29bn&b=2&f=s
    Cache-Control: no-cache
become
{...
    Date: "Sun, 26 May 2002 18:06:04 GMT",
    Cookie: "Q=q2=PPEAsg--; B=677gi6ouf29bn&b=2&f=s",
    "Cache-Control": "no-cache",
 ...}
It does no further checking or conversion. It does not parse dates. It does not do '%' transforms on URLs.

Parameters: string An HTTP header string.

Returns: A JSONObject containing the elements and attributes of the XML string.

Throws: JSONException

toString

public static String toString(JSONObject o)
Convert a JSONObject into an HTTP header. A request header must contain
{
    Method: "POST" (for example),
    "Request-URI": "/" (for example),
    "HTTP-Version": "HTTP/1.1" (for example)
 }
A response header must contain
{
    "HTTP-Version": "HTTP/1.1" (for example),
    "Status-Code": "200" (for example),
    "Reason-Phrase": "OK" (for example)
 }
Any other members of the JSONObject will be output as HTTP fields. The result will end with two CRLF pairs.

Parameters: o A JSONObject

Returns: An HTTP header string.

Throws: JSONException if the object does not contain enough information.