Skip to content

Commit

Permalink
Allow remote files upload (CORS)
Browse files Browse the repository at this point in the history
Implement preflighted requests (OPTIONS) to allow remote files upload
(CORS).

-
https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS#Preflighted_requests

- https://www.w3.org/TR/cors/
  • Loading branch information
skarab42 committed Apr 17, 2016
1 parent 2974639 commit fb0b4a3
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 0 deletions.
1 change: 1 addition & 0 deletions src/libs/Network/uip/webserver/http-strings
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ http_crnl "\r\n"
http_index_html "/index.html"
http_404_html "/404.html"
http_referer "Referer:"
http_header_preflight "HTTP/1.0 200 OK\r\nServer: uIP/1.0\r\nConnection: Keep-Alive\r\nAccess-Control-Allow-Origin: *\r\nAccess-Control-Allow-Methods: POST, GET, OPTIONS\r\nAccess-Control-Allow-Headers: X-Filename, Content-Type, Pragma, Cache-Control\r\nAccess-Control-Max-Age: 86400\r\n"
http_header_200 "HTTP/1.0 200 OK\r\nServer: uIP/1.0\r\nAccess-Control-Allow-Origin: *\r\nConnection: close\r\n"
http_header_304 "HTTP/1.0 304 Not Modified\r\nServer: uIP/1.0\r\nAccess-Control-Allow-Origin: *\r\nConnection: close\r\nExpires: Thu, 31 Dec 2037 23:55:55 GMT\r\nCache-Control: max-age=315360000\r\nX-Cache: HIT\r\n"
http_header_404 "HTTP/1.0 404 Not found\r\nServer: uIP/1.0\r\nAccess-Control-Allow-Origin: *\r\nConnection: close\r\n"
Expand Down
3 changes: 3 additions & 0 deletions src/libs/Network/uip/webserver/http-strings.c
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,9 @@ const char http_404_html[10] =
const char http_referer[9] =
/* "Referer:" */
{0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x72, 0x3a, };
const char http_header_preflight[251] =
/* "HTTP/1.0 200 OK\r\nServer: uIP/1.0\r\nConnection: Keep-Alive\r\nAccess-Control-Allow-Origin: *\r\nAccess-Control-Allow-Methods: POST, GET, OPTIONS\r\nAccess-Control-Allow-Headers: X-Filename, Content-Type, Pragma, Cache-Control\r\nAccess-Control-Max-Age: 86400\r\n" */
{0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x3a, 0x20, 0x75, 0x49, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x4b, 0x65, 0x65, 0x70, 0x2d, 0x41, 0x6c, 0x69, 0x76, 0x65, 0xd, 0xa, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x2d, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x3a, 0x20, 0x2a, 0xd, 0xa, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x2d, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x3a, 0x20, 0x50, 0x4f, 0x53, 0x54, 0x2c, 0x20, 0x47, 0x45, 0x54, 0x2c, 0x20, 0x4f, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0xd, 0xa, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x2d, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x3a, 0x20, 0x58, 0x2d, 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2d, 0x54, 0x79, 0x70, 0x65, 0x2c, 0x20, 0x50, 0x72, 0x61, 0x67, 0x6d, 0x61, 0x2c, 0x20, 0x43, 0x61, 0x63, 0x68, 0x65, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0xd, 0xa, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d, 0x4d, 0x61, 0x78, 0x2d, 0x41, 0x67, 0x65, 0x3a, 0x20, 0x38, 0x36, 0x34, 0x30, 0x30, 0xd, 0xa, };
const char http_header_200[86] =
/* "HTTP/1.0 200 OK\r\nServer: uIP/1.0\r\nAccess-Control-Allow-Origin: *\r\nConnection: close\r\n" */
{0x48, 0x54, 0x54, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0x20, 0x32, 0x30, 0x30, 0x20, 0x4f, 0x4b, 0xd, 0xa, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x3a, 0x20, 0x75, 0x49, 0x50, 0x2f, 0x31, 0x2e, 0x30, 0xd, 0xa, 0x41, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2d, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x2d, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x2d, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x3a, 0x20, 0x2a, 0xd, 0xa, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x20, 0x63, 0x6c, 0x6f, 0x73, 0x65, 0xd, 0xa, };
Expand Down
1 change: 1 addition & 0 deletions src/libs/Network/uip/webserver/http-strings.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ extern const char http_crnl[3];
extern const char http_index_html[12];
extern const char http_404_html[10];
extern const char http_referer[9];
extern const char http_header_preflight[251];
extern const char http_header_200[86];
extern const char http_header_304[184];
extern const char http_header_404[93];
Expand Down

0 comments on commit fb0b4a3

Please sign in to comment.