Add CORS headers to known headers (#389).

This commit is contained in:
Cesar Blum Silveira 2015-12-29 16:05:35 -08:00
parent 11e046e017
commit a53949c33e
3 changed files with 1259 additions and 4 deletions

View File

@ -114,7 +114,6 @@ namespace Microsoft.AspNet.Server.KestrelTests
headers.Values); headers.Values);
} }
[Fact] [Fact]
public void ContainsAndContainsKeyWork() public void ContainsAndContainsKeyWork()
{ {

View File

@ -103,6 +103,13 @@ namespace Microsoft.AspNet.Server.Kestrel.GeneratedCode
"Expires", "Expires",
"Last-Modified" "Last-Modified"
}; };
// http://www.w3.org/TR/cors/#syntax
var corsRequestHeaders = new[]
{
"Origin",
"Access-Control-Request-Method",
"Access-Control-Request-Headers",
};
var requestHeaders = commonHeaders.Concat(new[] var requestHeaders = commonHeaders.Concat(new[]
{ {
"Accept", "Accept",
@ -126,7 +133,7 @@ namespace Microsoft.AspNet.Server.Kestrel.GeneratedCode
"TE", "TE",
"Translate", "Translate",
"User-Agent", "User-Agent",
}).Select((header, index) => new KnownHeader }).Concat(corsRequestHeaders).Select((header, index) => new KnownHeader
{ {
Name = header, Name = header,
Index = index Index = index
@ -139,6 +146,16 @@ namespace Microsoft.AspNet.Server.Kestrel.GeneratedCode
"Transfer-Encoding", "Transfer-Encoding",
"Content-Length", "Content-Length",
}; };
// http://www.w3.org/TR/cors/#syntax
var corsResponseHeaders = new[]
{
"Access-Control-Allow-Credentials",
"Access-Control-Allow-Headers",
"Access-Control-Allow-Methods",
"Access-Control-Allow-Origin",
"Access-Control-Expose-Headers",
"Access-Control-Max-Age",
};
var responseHeaders = commonHeaders.Concat(new[] var responseHeaders = commonHeaders.Concat(new[]
{ {
"Accept-Ranges", "Accept-Ranges",
@ -151,7 +168,7 @@ namespace Microsoft.AspNet.Server.Kestrel.GeneratedCode
"Set-Cookie", "Set-Cookie",
"Vary", "Vary",
"WWW-Authenticate", "WWW-Authenticate",
}).Select((header, index) => new KnownHeader }).Concat(corsResponseHeaders).Select((header, index) => new KnownHeader
{ {
Name = header, Name = header,
Index = index, Index = index,