"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > 동일한 로컬 네트워크에 있는 다른 시스템에서 FastAPI 백엔드에 액세스하는 방법은 무엇입니까?

동일한 로컬 네트워크에 있는 다른 시스템에서 FastAPI 백엔드에 액세스하는 방법은 무엇입니까?

2024년 11월 18일에 게시됨
검색:175

How to Access a FastAPI Backend from Another Machine on the Same Local Network?

동일한 로컬 네트워크의 다른 머신/IP에서 FastAPI 백엔드에 액세스하는 방법

다른 머신에서 FastAPI 백엔드에 액세스하려면 동일한 로컬 네트워크를 사용하는 경우 다음 사항을 확인하는 것이 중요합니다.

1. 호스트 플래그 구성:

FastAPI 서버를 실행할 때 호스트 플래그를 0.0.0.0으로 설정합니다. 이를 통해 서버는 로컬 시스템에서 사용 가능한 모든 IP 주소를 수신할 수 있습니다.

2. 방화벽 조정:

FastAPI 앱의 지정된 포트에서 인바운드 연결을 허용하도록 방화벽이 구성되어 있는지 확인하세요. 이를 위해서는 Python용 인바운드 방화벽 규칙을 만들어야 할 수도 있습니다.

3. CORS 설정:

FastAPI 앱에서 CORS(Cross-Origin Resource Sharing)를 활성화하고 구성합니다. 이를 통해 서로 다른 IP 주소와 포트 번호가 사용될 때 발생할 수 있는 프런트엔드와 백엔드 간의 도메인 간 요청이 허용됩니다.

4. JavaScript의 HTTP 요청:

프런트엔드 JavaScript에서 FastAPI 백엔드로 가져오기 요청을 할 때 올바른 원본/URL을 사용하세요. 원본은 브라우저의 주소 표시줄에 입력된 도메인 이름과 일치해야 합니다.

FastAPI에 대한 CORS 설정 예:

origins = ['http://localhost:3000', 'http://192.168.x.x:3000']

app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,
    allow_credentials=True,
    allow_methods=['*'],
    allow_headers=['*'],
)

JavaScript에서 올바른 Origin 사용법:

fetch('http://192.168.x.x:3000/people', {...

이 단계를 따르면 동일한 로컬 네트워크에 있는 다른 시스템에서 FastAPI 백엔드에 성공적으로 액세스할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3