Method: Webhookdb::Service::Middleware.add_cors_middleware

Defined in:
lib/webhookdb/service/middleware.rb

.add_cors_middleware(builder) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/webhookdb/service/middleware.rb', line 23

def self.add_cors_middleware(builder)
  builder.use(Rack::Cors) do
    allow do
      origins(*Webhookdb::Service.cors_origins)
      resource "*",
               headers: :any,
               methods: :any,
               credentials: true,
               expose: ["ETag", Webhookdb::Service::AUTH_TOKEN_HEADER]
    end
    allow do
      origins("*")
      resource "/v1/saved_queries/*",
               headers: :any,
               methods: [:get],
               credentials: false,
               expose: "*"
    end
    allow do
      origins("*")
      resource "/v1/db/run_sql",
               headers: :any,
               methods: [:get, :post],
               credentials: false,
               expose: "*"
    end
  end
end