Added new mime types to string as well as simplified the httpMIMETypeToString method
This commit is contained in:
parent
7f08d8a838
commit
4c7fc2ea2a
@ -1,12 +1,24 @@
|
||||
#ifndef HTTPCONSTANTS_H
|
||||
#define HTTPCONSTANTS_H
|
||||
|
||||
#define HTTPCONSTANTS_STRING //PSTR
|
||||
|
||||
class HttpConstants
|
||||
{
|
||||
public:
|
||||
enum HttpRequestMethod {UNDEFINED, GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH};
|
||||
enum HttpVersion {UNKNOWN, HTTP_0_9, HTTP_1_1, HTTP_1_0, HTTP_2_0};
|
||||
enum HttpMIMEType {UNKNOWN_MIME, TEXT_PLAIN, TEXT_CSS, TEXT_HTML, TEXT_JAVASCRIPT, APPLICATION_JSON, APPLICATION_X_WWW_FORM_URLENCODED, IMAGE_PNG, IMAGE_JPEG, AUDIO_MPEG, APPLICATION_OCTET_STREAM};
|
||||
enum HttpMIMEType { UNKNOWN_MIME,
|
||||
TEXT_PLAIN,
|
||||
TEXT_CSS,
|
||||
TEXT_HTML,
|
||||
TEXT_JAVASCRIPT,
|
||||
APPLICATION_JSON,
|
||||
APPLICATION_X_WWW_FORM_URLENCODED,
|
||||
IMAGE_PNG,
|
||||
IMAGE_JPEG,
|
||||
AUDIO_MPEG,
|
||||
APPLICATION_OCTET_STREAM};
|
||||
enum HTTP_CODE {
|
||||
UNDEFINED_CODE = 0,
|
||||
HTTP_CODE_CONTINUE = 100,
|
||||
@ -69,53 +81,60 @@ class HttpConstants
|
||||
HTTP_CODE_NETWORK_AUTHENTICATION_REQUIRED = 511
|
||||
};
|
||||
|
||||
static char *httpVersionToString(HttpVersion v, char *buffer)
|
||||
static const char *httpVersionToString(HttpVersion version)
|
||||
{
|
||||
if(buffer == NULL)return NULL;
|
||||
|
||||
switch(v)
|
||||
switch(version)
|
||||
{
|
||||
case HttpVersion::HTTP_0_9:
|
||||
strcpy_P(buffer, PSTR("HTTP/0.9"));
|
||||
break;
|
||||
case HttpVersion::HTTP_1_1:
|
||||
strcpy_P(buffer, PSTR("HTTP/1.1"));
|
||||
return HTTPCONSTANTS_STRING("HTTP/0.9");
|
||||
break;
|
||||
case HttpVersion::HTTP_1_0:
|
||||
strcpy_P(buffer, PSTR("HTTP/1.0"));
|
||||
return HTTPCONSTANTS_STRING("HTTP/1.0");
|
||||
break;
|
||||
case HttpVersion::HTTP_2_0:
|
||||
strcpy_P(buffer, PSTR("HTTP/2.0"));
|
||||
return HTTPCONSTANTS_STRING("HTTP/2.0");
|
||||
break;
|
||||
default:
|
||||
strcpy_P(buffer, PSTR("HTTP/1.1"));
|
||||
return HTTPCONSTANTS_STRING("HTTP/1.1");
|
||||
break;
|
||||
}
|
||||
|
||||
return buffer;
|
||||
}
|
||||
|
||||
static char *httpMIMETypeToString(HttpMIMEType m, char *buffer)
|
||||
static const char *httpMIMETypeToString(HttpMIMEType m)
|
||||
{
|
||||
if(buffer == NULL)return NULL;
|
||||
|
||||
switch(m)
|
||||
{
|
||||
case HttpMIMEType::TEXT_PLAIN:
|
||||
sprintf_P(buffer, PSTR("text/plain"));
|
||||
return HTTPCONSTANTS_STRING("text/plain");
|
||||
break;
|
||||
case HttpMIMEType::TEXT_CSS:
|
||||
return HTTPCONSTANTS_STRING("text/css");
|
||||
break;
|
||||
case HttpMIMEType::TEXT_HTML:
|
||||
return HTTPCONSTANTS_STRING("text/html");
|
||||
break;
|
||||
case HttpMIMEType::TEXT_JAVASCRIPT:
|
||||
return HTTPCONSTANTS_STRING("text/javascript");
|
||||
break;
|
||||
case HttpMIMEType::APPLICATION_JSON:
|
||||
sprintf_P(buffer, PSTR("application/json"));
|
||||
return HTTPCONSTANTS_STRING("application/json");
|
||||
break;
|
||||
case HttpMIMEType::APPLICATION_X_WWW_FORM_URLENCODED:
|
||||
sprintf_P(buffer, PSTR("application/x-www-form-urlencoded"));
|
||||
return HTTPCONSTANTS_STRING("application/x-www-form-urlencoded");
|
||||
break;
|
||||
case HttpMIMEType::IMAGE_PNG:
|
||||
return HTTPCONSTANTS_STRING("image/png");
|
||||
break;
|
||||
case HttpMIMEType::IMAGE_JPEG:
|
||||
return HTTPCONSTANTS_STRING("image/jpeg");
|
||||
break;
|
||||
case HttpMIMEType::AUDIO_MPEG:
|
||||
return HTTPCONSTANTS_STRING("audio/mpeg");
|
||||
break;
|
||||
default:
|
||||
sprintf_P(buffer, PSTR("text/plain"));
|
||||
return HTTPCONSTANTS_STRING("application/octet-stream");
|
||||
break;
|
||||
}
|
||||
|
||||
return buffer;
|
||||
}
|
||||
|
||||
protected:
|
||||
|
Loading…
Reference in New Issue
Block a user