An open API service indexing awesome lists of open source software.

https://github.com/krakend/krakend-cors

Adds CORS support to the KrakenD framework
https://github.com/krakend/krakend-cors

api-gateway cors gin krakend krakend-cors mux

Last synced: 8 months ago
JSON representation

Adds CORS support to the KrakenD framework

Awesome Lists containing this project

README

          

[![Go Report Card](https://goreportcard.com/badge/github.com/krakendio/krakend-cors)](https://goreportcard.com/report/github.com/krakendio/krakend-cors) [![GoDoc](https://godoc.org/github.com/krakendio/krakend-cors?status.svg)](https://godoc.org/github.com/krakendio/krakend-cors)

KrakenD CORS
====

A set of building blocks for instrumenting [KrakenD](http://www.krakend.io) gateways

## Available flavours

1. [mux](github.com/krakendio/krakend-cors/blob/master/mux) Mux based handlers
2. [gin](github.com/krakendio/krakend-cors/blob/master/gin) Gin based handlers

Check the tests and the documentation for more details

## Configuration

You need to add an ExtraConfig section to the configuration to enable the CORS middleware.
At least one option should be defined.

- `allow_origins` list of strings (you can also use a wildcard, leaving it empty allows all origins too)
- `allow_headers` list of strings
- `allow_methods` list of strings
- `expose_headers` list of strings
- `allow_credentials` bool
- `max_age` duration (Ex: "12h", "5m", "3600s", ...)

### Configuration Example

```
"extra_config": {
"github_com/devopsfaith/krakend-cors": {
"allow_origins": [ "http://foobar.com" ],
"allow_methods": [ "POST", "GET"],
"max_age": "12h"
}
}
```

or leave the defaults (the defaults allows all origins):
```
"extra_config": {
"github_com/devopsfaith/krakend-cors": {
"allow_origins": []
}
}
```