/ / Použitie balíčka cors a nastavenie hlavičky Access-Control bez šťastia - node.js, express, cors, http-status-code-400

Použitie balíka cors a nastavenie hlavičky Access-Control bez šťastia - node.js, express, cors, http-status-code-400

Ok, takže mám problémy sZáhlavia riadenia prístupu. Čo je divné, že to fungovalo nejaký čas, a potom náhle prestalo pracovať, bez toho aby som modifikoval kód. “„ Posielam požiadavku z aplikácie, ktorá beží lokálne. Server, o ktorý žiadam, je hostený na heroku a chybové hlásenie, ktoré dostávam, je:

"Origin http://localhost:3000 nie je povolené pomocou Access-Control-Allow-Origin "

Existujú v tomto kóde chyby, ktoré vedú k tejto chybe?

var express = require("express");
var path = require("path");
var logger = require("morgan");
var bodyParser = require("body-parser");
var cors = require("cors");

var app = express();

app.use(cors());
app.use(logger("dev"));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

app.use((req, res, next) => {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Methods", "GET,PUT,POST,DELETE");
res.header("Access-Control-Allow-Headers", "X-Access-Token");
next();
});

Požiadavku som zachytil:

Request URL:https://secret-server.herokuapp.com/levels/
Request Method:GET
Status Code:400 Bad Request
Remote Address:**.***.***.**:443
Referrer Policy:no-referrer-when-downgrade

Accept:application/json, text/plain, */*
Accept-Encoding:gzip, deflate, br
Accept-Language:en-GB,en-US;q=0.9,en;q=0.8
Connection:keep-alive
Host:secret-server.herokuapp.com
Origin:http://localhost:3000
Referer:http://localhost:3000/

odpovede:

0 pre odpoveď č. 1

Skúšali ste nastavenia korby takto:

var corsOptions = {
origin: "*",
optionsSuccessStatus: 200,
methods: ["GET","PUT", "POST", "DELETE"],
allowedHeaders: ["X-Access-Token"],
preflightContinue: true
}

app.use(cors(corsOptions))