Skip to content

Commit f59a39c

Browse files
committed
Make CORS origins configurable
1 parent ebf3e5d commit f59a39c

File tree

4 files changed

+11
-3
lines changed

4 files changed

+11
-3
lines changed

IntegrationEngine/Api/Controllers/CronTriggerController.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
using IntegrationEngine.Core.Storage;
66
using IntegrationEngine.Model;
77
using IntegrationEngine.Scheduler;
8+
using System.Web.Http.Cors;
89

910
namespace IntegrationEngine.Api.Controllers
1011
{

IntegrationEngine/Api/Startup.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
using Owin;
33
using System.Linq;
44
using System.Web.Http;
5+
using System.Web.Http.Cors;
56
using Microsoft.Practices.Unity;
7+
using IntegrationEngine.Configuration;
68

79
[assembly: OwinStartup(typeof(IntegrationEngine.Api.Startup))]
810

@@ -13,8 +15,11 @@ public class Startup
1315
public void Configuration(IAppBuilder appBuilder)
1416
{
1517
var config = new HttpConfiguration();
16-
config.DependencyResolver = new ContainerResolver(ContainerSingleton.GetContainer());
17-
config.EnableCors();
18+
var container = ContainerSingleton.GetContainer();
19+
config.DependencyResolver = new ContainerResolver(container);
20+
var webApiConfig = container.Resolve<EngineConfiguration>().WebApi;
21+
if (webApiConfig.Origins.Any())
22+
config.EnableCors(new EnableCorsAttribute(string.Join(",", webApiConfig.Origins), "*", "*"));
1823
config.Routes.MapHttpRoute(
1924
name: "DefaultApi",
2025
routeTemplate: "api/{controller}/{id}",

IntegrationEngine/Configuration/WebApiConfiguration.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@ public class WebApiConfiguration
1010
{
1111
public string HostName { get; set; }
1212
public int Port { get; set; }
13+
public IList<string> Origins { get; set; }
1314
}
1415
}

configuration/IntegrationEngine.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
{
22
"WebApi": {
33
"HostName": "localhost",
4-
"Port": 9001
4+
"Port": 9001,
5+
"Origins": ["*"]
56
},
67
"MessageQueue": {
78
"QueueName": "myqueue",

0 commit comments

Comments
 (0)