Unable to get 200 response from an API when a request is sent from localhost:3000

0

When we submit a POST request from localhost:3000 to an API, we got message below in the browser develop console with Status: 404.

x 'Access to fetch at '<Invoke URL>' from origin 'http://localhost:3000' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If any opaque response serves your needs, set the request mode to 'no-cors' to fetch the resource with CORS disabled'. x POST <invoke URL' net::ERR_FAILED 404

But when we submit the request to the same API from Postman, we got 200 response.

Where could be the problem? Thanks.

gefragt vor 10 Monaten551 Aufrufe
1 Antwort
2
Akzeptierte Antwort

Postman does not implement the CORS restriction which are instead a native security browser mechanism.

You should implement CORS at server/backend layer, by allowing the caller (origin) to consume the rest endpoint.

profile picture
EXPERTE
beantwortet vor 10 Monaten
  • Thanks Antonio. We enabled CORS at the resource level in the API. Is that not sufficient? What do you mean by 'implement CORS at server/backend layer'? The backend of the specific method is an ECS service with Node.js runtime.

  • I meant that for Instance, if you use express as backend server, you should look into enabling cors like this: https://expressjs.com/en/resources/middleware/cors.html. Try out and let me know ;)

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen