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

DDD
Release: 2024-11-17 09:33:03
Original
210 people have browsed it

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

How to Access FastAPI Backend from a Different Machine/IP on the Same Local Network

To access a FastAPI backend from a different machine on the same local network, it's essential to ensure the following:

1. Host Flag Configuration:

Set the host flag to 0.0.0.0 when running the FastAPI server. This allows the server to listen on all available IP addresses on the local machine.

2. Firewall Adjustments:

Ensure that the firewall is configured to allow inbound connections on the specified port for the FastAPI app. This may require creating an inbound firewall rule for Python.

3. CORS Settings:

Enable and configure CORS (Cross-Origin Resource Sharing) in your FastAPI app. This allows cross-domain requests between the frontend and backend, which may occur when different IP addresses and port numbers are used.

4. HTTP Requests in JavaScript:

In the frontend JavaScript, use the correct origin/URL when making fetch requests to the FastAPI backend. The origin should match the domain name typed into the browser's address bar.

Example CORS Settings for FastAPI:

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

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

Proper Origin Usage in JavaScript:

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

By following these steps, you can successfully access your FastAPI backend from a different machine on the same local network.

The above is the detailed content of How to Access a FastAPI Backend from Another Machine on the Same Local Network?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template