|
@@ -102,14 +102,14 @@ namespace MediaBrowser.Server.Implementations.HttpServer
|
|
|
// new SessionAuthProvider(_containerAdapter.Resolve<ISessionContext>()),
|
|
|
//}));
|
|
|
|
|
|
- PreRequestFilters.Add((httpReq, httpRes) =>
|
|
|
- {
|
|
|
- //Handles Request and closes Responses after emitting global HTTP Headers
|
|
|
- if (string.Equals(httpReq.Verb, "OPTIONS", StringComparison.OrdinalIgnoreCase))
|
|
|
- {
|
|
|
- httpRes.EndRequest(); //add a 'using ServiceStack;'
|
|
|
- }
|
|
|
- });
|
|
|
+ //PreRequestFilters.Add((httpReq, httpRes) =>
|
|
|
+ //{
|
|
|
+ // //Handles Request and closes Responses after emitting global HTTP Headers
|
|
|
+ // if (string.Equals(httpReq.Verb, "OPTIONS", StringComparison.OrdinalIgnoreCase))
|
|
|
+ // {
|
|
|
+ // httpRes.EndRequest(); //add a 'using ServiceStack;'
|
|
|
+ // }
|
|
|
+ //});
|
|
|
|
|
|
HostContext.GlobalResponseFilters.Add(new ResponseFilter(_logger).FilterResponse);
|
|
|
}
|
|
@@ -403,6 +403,17 @@ namespace MediaBrowser.Server.Implementations.HttpServer
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
+ if (string.Equals(httpReq.Verb, "OPTIONS", StringComparison.OrdinalIgnoreCase))
|
|
|
+ {
|
|
|
+ httpRes.StatusCode = 200;
|
|
|
+ httpRes.AddHeader("Access-Control-Allow-Origin", "*");
|
|
|
+ httpRes.AddHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, PATCH, OPTIONS");
|
|
|
+ httpRes.AddHeader("Access-Control-Allow-Headers", "Content-Type, Authorization, Range, X-MediaBrowser-Token, X-Emby-Authorization");
|
|
|
+ httpRes.ContentType = "text/html";
|
|
|
+
|
|
|
+ httpRes.Close();
|
|
|
+ }
|
|
|
+
|
|
|
var operationName = httpReq.OperationName;
|
|
|
var localPath = url.LocalPath;
|
|
|
|