diff --git a/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/DefaultRequestRequestHandler.cs b/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/DefaultRequestRequestHandler.cs
index e052eb3..a2ea2c0 100644
--- a/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/DefaultRequestRequestHandler.cs
+++ b/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/DefaultRequestRequestHandler.cs
@@ -6,5 +6,12 @@ namespace PepperDash.Core.Web.RequestHandlers
/// Web API default request handler
///
public class DefaultRequestRequestHandler : WebApiBaseRequestHandler
- {}
+ {
+ ///
+ /// Constructor
+ ///
+ public DefaultRequestRequestHandler()
+ : base(true)
+ { }
+ }
}
\ No newline at end of file
diff --git a/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs b/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs
index 6d4b41c..22d9d23 100644
--- a/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs
+++ b/Pepperdash Core/Pepperdash Core/Web/RequestHandlers/WebApiBaseRequestHandler.cs
@@ -14,8 +14,10 @@ namespace PepperDash.Core.Web.RequestHandlers
///
/// Constructor
///
- protected WebApiBaseRequestHandler()
+ protected WebApiBaseRequestHandler(bool enableCors)
{
+ EnableCors = enableCors;
+
_handlers = new Dictionary>
{
{"CONNECT", HandleConnect},
@@ -30,6 +32,16 @@ namespace PepperDash.Core.Web.RequestHandlers
};
}
+ ///
+ /// Constructor
+ ///
+ protected WebApiBaseRequestHandler()
+ : this(false)
+ {
+ }
+
+ protected readonly bool EnableCors;
+
///
/// Handles CONNECT method requests
///
@@ -37,7 +49,7 @@ namespace PepperDash.Core.Web.RequestHandlers
protected virtual void HandleConnect(HttpCwsContext context)
{
context.Response.StatusCode = 501;
- context.Response.StatusDescription = "Not Implemented";
+ context.Response.StatusDescription = "Not Implemented";
context.Response.End();
}
@@ -48,7 +60,7 @@ namespace PepperDash.Core.Web.RequestHandlers
protected virtual void HandleDelete(HttpCwsContext context)
{
context.Response.StatusCode = 501;
- context.Response.StatusDescription = "Not Implemented";
+ context.Response.StatusDescription = "Not Implemented";
context.Response.End();
}
@@ -142,7 +154,13 @@ namespace PepperDash.Core.Web.RequestHandlers
return;
}
+ if (EnableCors)
+ {
+ context.Response.Headers.Add("Access-Control-Allow-Origin", "*");
+ context.Response.Headers.Add("Access-Control-Allow-Methods", "POST, GET, OPTIONS");
+ }
+
handler(context);
- }
+ }
}
}
\ No newline at end of file