I believe I am setting up my express app's [CORS](https://github.com/expressjs/cors) settings correctly, but my request still fails.

Express Cors setup:

```
app.use(
  cors({
    origin: ["localhost"]
  })
); 
app.options("*", cors()); // include before other routes

```

Also tried 

```
app.use(
  cors()
); 
app.options("*", cors()); // include before other routes

```

Request:

```
            fetch(`localhost:5000/charge`, {
                method: "POST",
                headers: {
                    "Content-Type": "application/json"
                },
                body: (
                    JSON.stringify({
                        stripeToken: token.id,
                        chargeAmount: Math.round(100 * this.state.donationAmount) // Needs to be an integer in cents
                    })
                )
            })
                .then(res => {
                    return res.text();
                })
                .then(txt => {
                    console.log(txt);
                })

```

Browser Error: 

Access to fetch at '<http://localhost:5000/charge>' from origin '<http://localhost:3000>' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

Any idea what is failing here? I need the respones so `no-cors` won't work for me.