>웹 프론트엔드 >JS 튜토리얼 >다른 포트와 통신하는 Node.js Express 서버에 대해 CORS를 활성화하는 방법은 무엇입니까?

다른 포트와 통신하는 Node.js Express 서버에 대해 CORS를 활성화하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-28 05:48:13844검색

How to Enable CORS for a Node.js Express Server Communicating with a Different Port?

다른 포트를 사용하는 Node.js Express 서버용 CORS 활성화

백그라운드

CORS(Cross-Origin Resource Sharing) 웹 애플리케이션이 다른 웹사이트의 리소스에 안전하게 요청하도록 허용합니다. Node.js Express 서버를 사용하여 다른 포트에서 실행되는 다른 API와 통신하는 경우 원본 간 오류를 방지하려면 CORS를 활성화해야 합니다.

Express로 CORS 활성화

Express에서 CORS를 활성화하려면 cors 패키지를 설치하세요.

npm install cors --save

cors 패키지와 Express 가져오기 모듈:

const cors = require('cors');
const express = require('express');

Express 앱 초기화:

const app = express();

cors 미들웨어를 사용하여 모든 요청에 ​​대해 CORS를 활성화합니다.

app.use(cors());

CORS 구성 특정 경로의 경우

CORS만 활성화하려는 경우 특정 경로의 경우 다음 구문을 사용합니다.

app.get('/products/:id', cors(), (req, res, next) => {
  res.json({ msg: 'This is CORS-enabled for a Single Route' });
});

제공된 예에서는 dcm4chee가 실행되는 포트 8080에서 CORS를 활성화하려고 합니다. 이렇게 하려면 Node.js 앱에 다음 코드가 있다고 가정합니다.

const express = require('express');
const app = express();

app.get('/request-from-browser', (req, res, next) => {
  // Your code to handle the request
});

app.listen(3000, () => {
  console.log('Node.js app listening on port 3000');
});

포트 8080에서 /request-from-browser 경로에 대해 CORS를 활성화하려면 경로 코드 앞에 다음 미들웨어를 추가하세요. :

app.use('/request-from-browser', cors());

이렇게 하면 포트 8080에서 /request-from-browser에 대한 요청에 대해 CORS가 활성화됩니다.

위 내용은 다른 포트와 통신하는 Node.js Express 서버에 대해 CORS를 활성화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.